Linux コマンド:ファイル/ディレクトリæ“作
目次
ファイルæ“作
nautilus
ファイルマãƒãƒ¼ã‚¸ãƒ£ãƒ¼ã§é–‹ã
$ nautilus test1
※test1ã¨ã„ã†ãƒ•ァイルorディレクトリをファイルマãƒãƒ¼ã‚¸ãƒ£ãƒ¼ã§é–‹ã
tar
アーカイブ作æˆ/展開
※圧縮/è§£ç”ã§ã¯ãªã„。
オプション | 機能 |
---|---|
-c | 書庫を新è¦ã«ä½œæˆã™ã‚‹ |
-x | 書庫ã‹ã‚‰ãƒ•ァイルをå–り出㙠|
-v | 処ç†ã—ãŸãƒ•ァイルã®ä¸€è¦§ã‚’詳細ã«è¡¨ç¤ºã™ã‚‹ |
-f | ファイルå:指定ã—ãŸæ›¸åº«ãƒ•ァイルã¾ãŸã¯ãƒ‡ãƒã‚¤ã‚¹ã‚’使用ã™ã‚‹ã€‚ |
-C | ディレクトリå:指定ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç§»å‹•ã—ã¦ã‹ã‚‰å‹•作を始ã‚ã‚‹ |
-z | ~.tar.gzå½¢å¼ã®ãƒ•ァイルを展開 |
例:書庫ファイルを展開ã™ã‚‹
$ tar -xvf test.tar
$ tar xzvf test.tar.gz
zip/unzip
è§£å‡
$ unzip (ファイルå).zip
圧縮ファイル内容一覧
$ unzip (ファイルå)
圧縮
$ zip (圧縮後ファイルå).zip (圧縮å‰ãƒ•ァイルå)
例:$ zip after.zip *.txt
7z
インストール
yum install -y p7zip-full
è§£å‡
7za x ~.7z
gzip
圧縮
gzip (ファイルå)
è§£å‡
gzip -d ~.gz
テã‚ストæ“作
cat
ファイルã®ä¸èº«ã‚’出力
head/tail
å…ˆé /末尾n行ã®ã¿å‡ºåŠ›ã™ã‚‹ã€‚
head -n 10
tail -n 10
head – 10
tail – 10
nã¯çœç•¥å¯
sed
1~10行目を除外(削除)ã—ã¦è¡¨ç¤º
sed -e ‘1,10d‘ test.txt
æŒ‡å®šè¡Œã«æ–‡å—列を差ã—è¾¼ã¿
sed -i -e ‘1i aaaaa‘ output.txt
ç½®æ›ã—ã¦ãƒ•ァイルを上書ã
sed -i "s/ç½®æ›å‰æ–‡å—列/ç½®æ›å¾Œæ–‡å—列/g" test.txt
sed -i "s/before/after/g" test.txt
複数ファイルを置æ›
「xargsã€å‚ç…§
指定行ã«åˆ¥ãƒ•ァイルã®å†…容を差ã—è¾¼ã¿
sed -i -e ‘1r input.txt‘ output.txt
wc
テã‚スト・ファイルã®è¡Œæ•°ã€å˜èªžæ•°ã€ãƒã‚¤ãƒˆæ•°ã‚’表示
$ wc (ファイルå)
行数ã®ã¿è¡¨ç¤º
$ wc -l (ファイルå)
grep
引数をå«ã‚€è¡Œã®ã¿ã‚’抽出ã™ã‚‹ã€‚
$ grep オプション 検索語 検索対象ファイル
$ grep -X test test.txt
オプション | 機能 |
---|---|
-i | 大文å—ã¨å°æ–‡å—を区別ã—ãªã„ |
-w | å˜èªžå…¨ä½“ã§ãƒ‘ターンã¨ä¸€è‡´ã™ã‚‹ã‚‚ã®ã‚’検索ã™ã‚‹ |
-R | サブディレクトリ以下も検索ã™ã‚‹ |
-l | 検索パターンã«ãƒžãƒƒãƒã—ãŸãƒ•ァイルåã®ã¿è¡¨ç¤º |
-X | æ£è¦è¡¨ç¾ã§æ¤œç´¢ |
æ£è¦è¡¨ç¾
$ grep -X aa*bb /etc/*.conf
ファイルåã®ã¿å‡ºåŠ›
$ grep -ril "aaaaa" /etc/
パイプ処ç†
$ cat /etc/passwd | grep /bin
複数ファイルã‹ã‚‰Grep
「xargsã€å‚ç…§
cut
入力文å—列を引数ã§åˆ†å‰²ã™ã‚‹ã€‚
$ /etc/passwd cut -d ‘:’
æ–‡å—列を’:’ã§åˆ†å‰²ã—ã€ï¼‘番目ã®åˆ—ã®ã¿æŠ½å‡ºã™ã‚‹ã€‚
$ etc/passwd cut -d ‘:’ -f 1
sort
入力文å—列をソートã™ã‚‹
$ /etc/passwd sort
diff
差分表示
$ diff (ファイル1) (ファイル2)
ディレクトリã®å·®åˆ†è¡¨ç¤º
$ diff -r (ディレクトリ1) (ディレクトリ2)
※ディレクトリã«ãƒ•ァイルãŒç„¡ã„å ´åˆã¯å·®åˆ†ã‚’抽出ã—ã¦ãれãªã„
差分記å·ç„¡ã—ã§å·®åˆ†è¡¨ç¤º1
$ diff (ファイル1) (ファイル2) | grep -e ‘^>’ | perl -pe ‘s/^<\s//g' | -pe 's/^>\s//g’
差分記å·ç„¡ã—ã§å·®åˆ†è¡¨ç¤º1
$ diff –old-line-format=’%L’ –new-line-format=’%L’ –unchanged-line-format=” (ファイル1) (ファイル2)
uniq
上下行ã®é‡è¤‡ã‚’削除
$ sort (ファイルå) | uniq
less
1画é¢ãšã¤è¡¨ç¤º
$ less (ファイル)
Linuxコマンドをパイプ処ç†
$ (コマンド) | less
$ grep aaa test.txt | less
è¡¨ç¤ºçµæžœã®å…ˆé ã«è¡Œç•ªå·ã‚’付åŠ
$ less -N (ファイル)
$ grep aaa test.txt | less -N
検索語を強調表示
$ less -p (æ–‡å—列) (ファイル)
$ grep aaa test.txt | less -p aaa
ã€ç”»é¢è¡¨ç¤ºæ™‚ã®æ“作】
次é :「Spaceã€
å‰é :「bã€
次行:「jã€= vi
å‰è¡Œï¼šã€Œkã€= vi
vi
「Vi/Vim/GVim使用方法ã€å‚ç…§
検索
locate
$ locate (ファイルå)
$ locate httpd.conf
自階層以下より検索
$ locate -b ~
æ¤œç´¢çµæžœã‚’削除
$ locate -b ~ | xargs rm -rf
find
find (検索先ディレクトリ) (検索æ¡ä»¶) (アクション)
(検索先ディレクトリ)çœç•¥ → ã‚«ãƒ¬ãƒ³ãƒˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒæ¤œç´¢å…ˆ
(検索æ¡ä»¶) → 全ディレクトリã€å…¨ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ¤œç´¢å¯¾è±¡
(アクション) → æ¤œç´¢çµæžœã‚’å…¨ã¦è¡¨ç¤º(-lsアクションã¨åŒç‰)
複数ディレクトリを検索
find (検索先ディレクトリ) (検索先ディレクトリ) (検索æ¡ä»¶) (アクション)
find /a /b -name test.txt
複数(AND)æ¡ä»¶ã§æ¤œç´¢
find (検索先ディレクトリ) (検索æ¡ä»¶) (検索æ¡ä»¶) (アクション)
find / -name test -type f
複数(OR)æ¡ä»¶ã§æ¤œç´¢
find (検索先ディレクトリ) (検索æ¡ä»¶) -OR (検索æ¡ä»¶) (アクション)
find / -name aaa -or -name bbb
複数(ANDã€OR)æ¡ä»¶ã§æ¤œç´¢
find (検索先ディレクトリ) (検索æ¡ä»¶) (検索æ¡ä»¶) -OR (検索æ¡ä»¶) (アクション)
find / -name aaa -type f -or -name bbb
除外æ¡ä»¶ã§æ¤œç´¢
find (検索先ディレクトリ) !(検索æ¡ä»¶) (アクション)
find / !-name aaa
複数除外æ¡ä»¶ã§æ¤œç´¢
find (検索先ディレクトリ) !(検索æ¡ä»¶) (アクション)
find / !-name aaa !-name bbb
ファイル/ディレクトリåã§æ¤œç´¢
find / -name aaa
find / -name *.txt
find / -name aaa.*
æ£è¦è¡¨ç¾ã§æ¤œç´¢
find / -regex (æ£è¦è¡¨ç¾)
ファイルã®ã¿ã‚’検索
find / -type f ~
ディレクトリã®ã¿ã‚’検索
find / -type d ~
指定ãƒã‚¤ãƒˆã‚ˆã‚Šå¤§ãã„ファイルを検索
find / -size +500 ~
指定ãƒã‚¤ãƒˆã‚ˆã‚Šå°ã•ã„ファイルを検索
find / -size -500 ~
検索ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªéšŽå±¤ã‚’制é™ã—ã¦æ¤œç´¢
find / maxdepth 1 ~
指定ディレクトリã®ç›´ä¸‹ã®ã¿
find / maxdepth 2 ~
指定ディレクトリã‹ã‚‰1階層下ã¾ã§ã‚’検索
æ¤œç´¢çµæžœLinuxコマンドを実行
find ~ -exec (Linuxコマンド)
find ~ -exec rm -rf {} \;
{}ã¯æ¤œç´¢çµæžœã«ã‚ˆã£ã¦ç½®æ›ã•れる。
1.txt
2.txt
3.txt
ãŒæ¤œç´¢ã•れãŸå ´åˆã€
rm -rf 1.txt
rm -rf 2.txt
rm -rf 3.txt
ãŒ1ã¤ãšã¤å®Ÿè¡Œã•れる
find ~ | xargs (Linuxコマンド)
find ~ | xargs rm -rf
-execã¨é•ã£ã¦æ¤œç´¢çµæžœãŒåŒæ™‚ã«å‡¦ç†ã•れる