タグ: linux

よく忘れるLinuxコマンドのメモ

よく忘れるLinuxとMacのターミナル(Terminal)コマンドのメモ

置換

//ファイル名を一斉に置換
$ find . -type f | sed 'p;s/FROM_TEXT/TO_TEXT/' | xargs -n2 mv

ネットワーク関係

//ipv6のアドレス(type=AAAAをセットしてから)
$ nslookup 
> set type=AAAA
> youtube.com
//ipv6の経路(traceroute6を使う)
$ traceroute6 2404:6800:4004:80d::200e
//ping -sはsize (mac OSX 10.12.6環境)
$ ping -s 500 yama-lab.com
$ ping6 -s 500 yama-lab.com
//traceroute
$ traceroute yama-lab.com

Windowsで作成したzipファイルを文字化けせずに解凍

$ unar ファイル名

(unarをHomeBrewでインストールしています。)

標準出力をクリップボードに取得する(Mac)

$ pwd | pbcopy

Macでパスワード作成(pwgen)

$ pwgen //普通
$ pwgen -y 12 // symbolをまぜて12文字作成

サービスの状態確認

$ service postfix status

現在使われているMTA確認

$ alternatives --display mta

ContOSのバージョン確認

$ cat /etc/redhat-release
CentOS release 6.9 (Final)

Macの不要ファイル削除

$ find ./ -name ".DS_Store" | xargs rm

ディスク容量

$ du -h --max-depth 1 /

パッケージの概要

$ rpm -qi nginx

パッケージ内のファイル

$ rpm -ql nginx

シンボリックリンク

$ ln -s {target} {new link directory or file}

firewalldでのサービス追加・削除

//ようにhttp,httpsを設定を許可
# firewall-cmd --permanent --zone=public --add-service=http 
# firewall-cmd --permanent --zone=public --add-service=https  
//とすると設定ファイル(xml)が変更される(削除の場合は--remove-service='http'など)
# cat /etc/firewalld/zones/public.xml
<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Public</short>
  <description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
  <service name="dhcpv6-client"/>
  <service name="http"/>
  <service name="ssh"/>
  <service name="https"/>
</zone>
//リロードして完了
$ firewall-cmd --reload

firewalldでポート追加・削除

//ポートとプロトコル指定
 # firewall-cmd --add-port=8888/tcp --zone=public --permanent
 // 確認
# cat /etc/firewalld/zones/public.xml
<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Public</short>
  <description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
  <service name="dhcpv6-client"/>
  <service name="http"/>
  <service name="ssh"/>
  <service name="https"/>
  <port protocol="tcp" port="8888"/>
</zone>

firewalldでの許可を確認する方法

#  firewall-cmd --list-all --zone=public
# firewall-cmd --list-services --zone=public
# firewall-cmd --list-ports --zone=public
 

Macの不要ファイル”.DS_Store” をLinuxコマンドで一括削除

Macの不要ファイル“.DS_Store” をLinuxコマンドで一括削除

findで探してxargsに送ってrmで削除

$ find ./ -name ".DS_Store" | xargs rm

find ファイル・ディレクトリ検索コマンド

引数1 「.」

これはファイルを探す場所、特定のディレクトリを指定する。
ここではカレントディレクトリ「.」を指定

引数2 「-name “.DS_Store”」

これはファイル名を指定

この部分だけを実行すると以下の用にファイル一覧が標準出力へ表示されるのでこのファイル一覧それぞれに対してxargsが「$ rm (ファイル名)」を行っています。

$ find . -name ".DS_Store"
./.DS_Store
./img/.DS_Store
./news/.DS_Store
./news/wp-content/.DS_Store
./news/wp-content/plugins/.DS_Store

実行イメージ

findで検索 → |(パイプ)でxargsへ結果を渡す → xargsは rm を全てに対して実行
(内部的に以下の用に実行される)
$ rm ./.DS_Store
$ rm ./img/.DS_Store
$ rm ./news/.DS_Store
$ rm ./news/wp-content/.DS_Store
$ rm ./news/wp-content/plugins/.DS_Store

(詳細・参考サイト)

http://www.k4.dion.ne.jp/~mms/unix/linux_com/find.html
http://wa3.i–3-i.info/word11619.html

MacのParallelsにPuppyLinuxをインストールしました。


複数台のサーバを連携したサービスのテスト環境を作るためMacのParallelsにPuppyLinuxをインストールして見ました。
なぜPuppyか?PuppyLinuxが可愛い(小さい、キュート)なので。

Powered by WordPress & Theme by Anders Norén