tshizuku03の日記

主にoracleやLinuxコマンドについての記事を載せていきたいと思っています。

基本コマンドとファイル操作4

**tac コマンド
ファイルの内容を最後の行から表示します。

**tee コマンド
標準入力から読み込んだデータを標準出力とファイルの両方に出力します。
実行例
[root@node001 ~]# nl test1.txt | tee test2.txt | head -2
1 aaa
2 bbb
[root@node001 ~]# cat test2.txt
1 aaa
2 bbb
3 ccc
4 ddd


**コマンドを連続実行する「;」「&&」「||」
構文
例1)コマンド1、コマンド2を順々に実行する
$コマンド1;コマンド2
例2)コマンド1が実行できれば、コマンド2を実行する
$コマンド1 && コマンド2
例3)コマンド1が実行できなければ、コマンド2を実行する
$コマンド1 || コマンド2

**grep コマンド
テキストデータないの文字列検索を行う。
構文

>-vパターンに一致しない行を表示する

-n行番号を表示する-lパターンと一致するファイル名を表示-i大文字と小文字を区別しないで検索を行う

 構文
$grep [オプション]検索する文字列パターン[ファイル名]...n

主なオプション説明
-v パターンに一致しない行を表示する
-n 行番号を表示する
-l パターンと一致するファイル名を表示
-i 大文字と小文字を区別しないで検索を行う

実行例

[root@node001 ~]# grep -n aaa test1.txt
1:aaa
[root@node001 ~]# cat test1.txt | grep -i aaa
aaa
[root@node001 ~]# cat test1.txt | grep -l aaa
(標準入力)
[root@node001 ~]# cat test1.txt | grep -v aaa
bbb
ccc
ddd

fff

ppp

[root@node001 ~]# #grep -l[一致するファイル名表示] [ファイル名]
[root@node001 ~]# cat test1.txt
aaa
bbb
ccc
ddd
fff
[root@node001 ~]# grep -l "aaa" *
mylist.txt
test1.txt
test2.txt

 

[root@node001 ~]# find [検索ディレクトリ][ファイル名検索]

[root@node001 ~]# find . -name "test1*.txt"
./test1.txt
./test/test1.txt

 

 **tail [オプション]ファイル名...n

主なオプション説明
-n 行数を数字で指定、末尾のn行部分を表示
-f ファイルの内容が増え続けているものと家庭し、常にファイルの最終部分を読み続けようとする

 

**tr コマンド
標準入力であるキーボードから入力した文字を指定したフォーマットに変換して、
標準出力であるディスプレイに表示することができます。
構文
tr [オプション][文字群1 [文字群2]]

主なオプション説明
-d 文字群1で合致した文字を削除する
-s 文字群1で合致した文字の繰り替えしを1文字に置き換える

 実行例

 [root@node001 ~]# cat test1.txt
aaa
bbb
ccc
ddd
[root@node001 ~]# tr a-z A-Z < test1.txt
AAA
BBB
CCC
DDD

 **tr コマンド
標準入力であるキーボードから入力した文字を指定したフォーマットに変換して、
標準出力であるディスプレイに表示することができます。
構文

tr [オプション][文字群1 [文字群2]]

主なオプション説明
-d 文字群1で合致した文字を削除する
-s 文字群1で合致した文字の繰り替えしを1文字に置き換える

実行例

[root@node001 ~]# cat test1.txt
aaa
bbb
ccc
ddd
[root@node001 ~]# tr a-z A-Z < test1.txt
AAA
BBB
CCC
DDD

**set コマンド
構文
set[オプション][編集コマンド][ファイル名]

主なオプション説明
-i 編集結果を直接ファイルに書き込む
-s/パターン/置換文字列 ファイル各行を対象に、最初にパターンに合致する文字列を置換文字列に変換
-s/パターン/置換文字列/g ファイル内全体を対象に、パターンに合致する文字列を置換文字列に変換
d パターンに合致する行を削除
p パターンに合致する行を表示

 実行例

[root@node001 ~]# sed 's/aaa/AAA/g' test1.txt
AAA
bbb
ccc
ddd
fff
ppp
AAA
[root@node001 ~]# sed -n '/aaa/p' test1.txt
aaa
aaa
[root@node001 ~]# sed '1d' test1.txt
bbb
ccc
ddd
fff
ppp
aaa
 

**wc コマンド
ファイル内のバイト数、単語数、行数を表示するにはwcコマンドを使用します。
構文

wc [オプション][ファイル名]

<table class="table2" border="1">
<tbody>
<tr>
<th><span style="color: #ff0000;">主なオプション</span></th>
<th><span style="color: #ff0000;">説明</span></th>
<tr>
<td>-c</td>
<td>バイト数だけ出力する</td>
</tr>
<tr>
<td>-l</td>
<td>行数だけを出力する</td>
</tr>
<tr>
<td>-w</td>
<td>単語数だけ出力する</td>
</tr>
</tbody>
</table>

 実行例

[root@node001 ~]# wc -l test1.txt
8 test1.txt
[root@node001 ~]# wc -c test1.txt
29 test1.txt
[root@node001 ~]# wc -w test1.txt
7 test1.txt

 **expand コマンド
引数で指定されたファイル内にあるタブをスペースに変換する場合に使用します。
構文
expand [オプション][ファイル名]

主なオプション説明
-i 行頭のタブのみスペースへ変換する
-t 置き換え桁数を指定する