Mac Book Pro(high sierra)をつかっていて、残り容量が気になった際にみるところ

PCの容量を使っているところ横断でぱっと見る場合(コマンド使わない場合)

Cmd + Space で、「ストレージ」と検索すると、
ストレージの管理」がでるのでそれを開く。

不要なファイルを確認で、だいたい容量が大きいファイルを見つけられる。

コマンドでさくっと全体容量をチェック

まず空き容量をdfコマンドでチェック


$ df -h

a$ df -h Filesystem Size Used Avail Capacity iused ifree %iused Mounted on /dev/disk1s1 234Gi 210Gi 21Gi 92% 2517498 9223372036852258309 0% / devfs 184Ki 184Ki 0Bi 100% 638 0 100% /dev /dev/disk1s4 234Gi 2.0Gi 21Gi 9% 2 9223372036854775805 0% /private/var/vm map -hosts 0Bi 0Bi 0Bi 100% 0 0 100% /net map auto_home 0Bi 0Bi 0Bi 100% 0 0 100% /home

Capacity 92%なので、のこり8%の21Gしたない。。

どのディレクトリのどのファイルが大きいか掘り下げて探す


$ du -g -x -d 5 / | awk '$1 >= 5{print}'

パスワードを要求されるので、ログイン時に使用しているパスワードを入力する。パスワードは入力しても画面には何も表示されないので気にせず入力した後returnキーを押して実行すること。正しく実行されると、ルートから5階層下までのフォルダの容量を確認し、容量が5GB以上のフォルダがリストアップされる (出力結果の数字は各フォルダの容量 (単位:GB))。すべてがリストアップされるのには時間がかかるので、プロンプト (例:username-no-macbook:~ username$) が出て次のコマンドが入力できる状態になるまで待つこと。
#最後にリストアップされるフォルダ名が / のみの項目はファイル容量の合計値なので無視してよい

‘ 引用元 サイト: https://discussionsjapan.apple.com/docs/DOC-1081

iphoneアプリなど開発している場合

xcodeで一時ファイルや、もう使わないアーカイブファイルがのこっていてそれが
容量を結構逼迫している。
頻繁に開発していると普通に1週間で20Gとか増えている。

アーカイブファイル


$ cd ~/Library/Developer/Xcode/Archives

DerivedData


$ cd ~/Library/Developer/Xcode/DerivedData

iPhone Simulator


$ cd ~/Library/Application\ Support/iPhone\ Simulator

CentOS7 ターミナル上で、指定ディレクトリ以下、指定文字列一括置換

CentOS等で、大きいプロジェクトファイル内の文字を、
横断して一括で文字列置換したい時がある、
例えば、ハードコーディングしてしまった、定数や、ドメイン等。
指定文字列を一括置換したい時がある。

そんな時に使えるコマンド

下記はカレントディレクトリ配下のphpファイル全てを横断検索して指定文字列に置換している例


$ find ./ -type f -name "*.php" | xargs sed -i 's/置換対象文字列/置換後の文字列/g'

よく使うけど、よく忘れるのでメモ。

検索対象の確認だけなら、

指定ディレクトリ配下のファイルを横断して指定文字列を検索


$ find ./ -type f -name "*.php" -print | xargs grep '検索文字列'

以上

MacターミナルからSublimeでスクリプトを開く

Macのopenコマンドでテキストファイルを開くとき、
デフォルトで、重いIDEや、エディタが開いて、、軽く1ファイル見たいだけなのにという場合。

$open README.md

僕は、MonoDevelopという重いエディタが開き、困りました。

指定のアプリケーションを指定してテキストファイルを開く場合は、
これ

$open -a /Applications/Sublime\ Text.app README.md

-aオプションで、起動するアプリケーションを指定しています。
ここではSublimeを指定して、README.mdファイルを開いてます。

adbを使って、androidのエミュレータ内のsqlite3やプリファレンスをチェックする

アンドロイド開発で、sqliteのデータや、
プリファレンスの中身を見たい時のチェック方法メモ。

まずadbが使える状況で、

$ adb devices

で、利用できるデバイス一覧が表示されます。

$ adb devices
List of devices attached 
37c70c34320b3d7 device

利用したいデバイスを下記コマンドで指定し、shell。

$ adb -s emulator-5554 shell

するとエミュレータ内で色々コマンドが実行できるようになる。

#ls
#pwd
#cd
#cat
・・・等々

本題のsqlite3やプリファレンスのデータを見るにはまず、そのファイルの場所にいきます。

◆プリファレンスの場所は下記、

#cat /data/data/対象のアプリのパッケージ名/shared_prefs/プリファレンス名.xml

実はxml形式だったのね。

◆sqlite3のデータの場所は下記、

#sqlite3 /data/data/対象のアプリのパッケージ名/databases/データベース名.db 
あとは好きなようにsqlite3のコマンドで、.tableしたりselectしたりできます。

 

 

phpでSSH接続して、コマンドを投げるメモ

PHPでプログラムから、外部サーバーへのSSHで、コマンドをなげたいケースがある。

そういう際に、知っておくと便利なコマンド「ssh2_connect

下記はサンプルのPHPプログラムです。

ssh2_connect.php
// ssh接続して、ファイルのパーミッションをチェックするサンプル

$ok = "";
$ng = ""; 

$connection = ssh2_connect('192.168.1.1', 22);
ssh2_auth_password($connection, 'user', 'pass');

$stream = ssh2_exec($connection, 'echo `ls -l /home/test/call.agi` | cut -d" " -f1');
$errorstream = ssh2_fetch_stream($stream, SSH2_STREAM_STDERR);

stream_set_blocking($stream, true);
stream_set_blocking($errorstream, true);

$ok =  stream_get_contents($stream);
$ng =  stream_get_contents($errorstream); //エラーがあれば表示

if($ok == "-rwxrwxrwxn" && !$ng)
{
    echo "OK";
    exit();
}
echo "NG";