日々の学び「Mac, Linuxのコマンド」など
今日学んだこと〜It is learned today〜
Ubuntu, Linux
($、#はプロンプト)
OS関係
- $ cat /etc/os-release
- $ cat /etc/lsb-release
- $ uname -a, -s, -m
- $ lsb_release -a
- $ echo $? 【直前コマンドの終了ステータス】
- $ !! , または「↑」【直前コマンドの再実行】
- $ LL=$(ls -1) 【コマンド実行結果を変数に代入】
- $ cat /proc/cpuinfo
- $ sudo lsof -i【プロセス情報の確認】
- $ w, who, id 【ログインユーザ確認】
- $ mv -t 【移動先を明示。xargsを使う時には-tを付けたほうが安心】
- $ id username 【どのグループに属しているかなど知りたい時】
- ファイルやフォルダの一括パーミッション変換
- find . -type d | xargs chmod 755 【カレントディレクトリ以下のフォルダのパーミッションを755へ変更】
- find . -type f | xargs chmod 644 【カレントディレクトリ以下のファイルのパーミッションを644へ変更】
テキストファイル
- $ grep -o -i 文字 ファイル名 | wc -l 【文字列のカウント】
- $ sed -i ‘1s/^/文字列\n/’ ファイル名 【先頭に1行追加】
- $ sed ‘1d’ ファイル名 【先頭の1行目を削除】
- $ grep -rn ‘xxx’ ファイル名 【ファイルの中身を検索する、xxxという文字列を行番号付きで検索】
キャパシティ
- $ top -d 3 -n 4 【3秒間隔、4回更新】
- $ vmstat 5 3 【5秒間隔、3回更新、スワップはsi, soを確認】
- $ cat /proc/meminfo
- $ du -ms ~/* | sort -nr 【ディスクの空き容量をソートして表示する】
検索
- $ fine ~/path -ctime +30 【更新日が30日以上前のファイル一覧を表示】
- $ fine ~/path -ctime 7 【更新日が一週間前のファイル一覧を表示】
- $ fine ~/path -ctime -8 【更新日が7日以内のファイル一覧を表示】
圧縮・解凍
- $ tar Jcvf XXX.tar.xz フォルダ名 【XZで圧縮 Jは大文字】
- $ tar Jxvf XXX.tar.xz 【XZを解凍 Jは大文字】
ネットワーク関係
必要ならapt install net-toolsでインストール
- $ netstat -tulpen 【LESTENポートの表示】
- $ netstat -tanp | grep LISTEN 【同上】
- $ netstat -nr 【ゲートウェイとか】
- $ netstat -lnp 【】
- $ ss -tplm 【netstatの代替】
- $ sudo lsof -i -P | grep “LISTEN” 【これもLISTENポートを調べる】
- $ nmap -sP 192.168.1.0/24 【ネットワーク内で使用されているIPアドレスの確認】
- # nmap -O 192.168.x.xxx 【OSの調査】
- # nmap -sV -O -p- 192.168.x.xxx【対象IPのポートスキャン】
- $ networkctl status -a【ネットワークの状態を知る便利なコマンド】
- $ curl -v https://アドレス:ポート番号 【通信の詳細を表示する】
- $ curl -X GET https://アドレス:ポート番号 【リクエストメソッドの変更】
- curl -X POST -d ‘username=test’ -d ‘password=test’ localhost:8080/login
- curl –request GET localhost
- curl –request POST localhost
- curl -H “Authorization: Yyyyy eyXXXX.XXXX.XXXXX” localhost:8080/welcome
ファイヤーウォール
iptables
- $ sudo iptables –list 【確認】
- $ sudo iptables -L 【確認】
- UFW
- $ sudo ufw allow [ポート番号] 【許可する】
- $ sudo ufw enable 【変更を反映する】
- $ sudo ufw delete allow [ポート番号] 【削除する】
apt
- $ apt list “golang*” –installed 【インストールされてるか確認リスト】
- $ apt search hogehoge 【hogeソフトのリスト、インストール状態確認】
- $ sudo apt remove hogehoge 【hogeソフトの削除 設定ファイルは残る】
- $ sudo apt purge hogehoge 【hogeソフトの削除 設定ファイルまで】
head, tail
ログを見るときによく使う。
- $ head -10 /var/log/syslog 【10行表示】
- $ tail -f 10 /var/log/syslog 【-f でリアルタイムに更新される、10行表示】
Postfix dovecot
- $ postconf -n 【設定確認】
- $ dovecot -n 【設定確認】
Mac OS X
- Homebrew
- $ brew doctor
- $ brew –version
- $ brew list
- $ brew update
- $ brew upgrade
- $ brew remove
- $ brew search [ソフト名]
- $ brew info [ソフト名]
- $ brew install [ソフト名]
- $ brew link formula 【有効化】
- $ brew unlink formula 【無効化】
- $ brew cleanup, $ brew cleanup -n
- $ mysql
- $ brew remove mysql
- $ sudo rm -rf /usr/local/var/mysql
- $ brew install mysql
- $ mysql –version
巨人3軍スローガン
- 野望
1件のコメント