自己啓発マン  2020/12/03更新

linux②


正規表現とパイプ

標準入出力

標準入力に対して標準出力と標準エラー出力の2つ

一般的には、入力はキーボード、出力はデスクトップに反映される


出力のリダイレクト

次のコマンドはlsをリダイレクトしてファイルに書き込む

ls > ls-output(cat > ls-outputも同じ操作できる)

ここではls-outputというファイルが作成される

cat でls-outputの中身を確認するとlsの実行結果が出力される


標準エラー出力

出力に異常があるときエラーメッセージが出てくる

1:標準出力

2:標準エラー出力


パイプ

|←これをパイプという

コマンドとコマンドをパイプでつなげることでパイプの前のコマンドを後ろのコマンドの標準入力とすることができる


基本的なコマンド2

タイムスタンプ・・・ファイルの最終更新日

ファイルには必ずタイムスタンプが存在しており、それはlsコマンドの-lオプションで確認することができる。

以下のコマンドでタイムスタンプを変更することができる

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

上記で実行するとタイムスタンプが最新に更新される

ファイルが存在しない場合は、0バイトの中身がないファイルが作られる

-tで時間指定で変更することができる -t 00000000

                   月 日 時 分



ファイルの一部取得

ファイルの一部分のみ見たい場合は以下のコマンドで見ることができる

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

オプション

-n 行 ・・・先頭から指定した行を標準出力します 行に指定したい行数を入れる 10行見たいなら -n10

-c バイト・・・先頭から指定したバイト数を標準出力します 10バイト見たいなら -c10

オプションをつけない場合は先頭から10行だけ出力する


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

上記では最後から見たい部分を見ることができる

オプションの種類はheadと一緒  +  -fというのがある

tail -f ファイル名   ではもしファイル名の終わり部分に変更が生じたときにリアルタイムでモニタすることができる

リアルタイムでログファイルなどの変更を見ることができる

ctrl+Cで処理を中断することができる


テキストファイルのソート

テキストファイルのソートをしたいときは以下のコマンドで実行できる

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

以下オプション

-r・・・逆順でソート

-k x・・・x列目のデータをソートする

-n・・・数値としてソートする

オプションをつけないことで各行の最初の文字をアルファベット順にソートする

-nの数値としてソートするというのは基本的には-k x と組み合わせて使う

データのx列目のデータを数値として捉えてソートしたいときは -n -k x  と入力する


行の重複の消去

以下のコマンド入力で直前の行と同じ内容があった場合、出力しない

連続している同じ行を1行にまとめることができる

uniq ファイル名


文字の書き換え

以下のコマンドで標準入力からのデータを文字ごとに置き換えることができる

tr 文字列1 文字列2


ファイルに変更の有無があるかどうかを調べるには以下のコマンドで実行できる

diff [オプション] ファイル1 ファイル2

以下オプション

-c・・・context diff形式で差分を出力

-u・・・unified diff形式で差分を出力


viエディタ

viとはぺージャでありエディタ

viでファイルを開いた場合はコマンドモードとインサートモードがある

viコマンドでファイルを開くには以下のコマンド入力

vi ファイル名

開いたファイルを閉じるときはESC押して、:qを入力

開いたファイルを保存するときはESC押して、:wを入力

開いたファイルを保存して終了したい場合はESC押して、:wqを入力

開いたファイルを保存せずに強制終了したい場合はESC押して、:q!を入力

行の最初に入力したいときはIコマンド 最後ならAコマンド


カーソルの動き

ESC状態でhコマンドで左、lコマンドで右、jコマンドで下、kコマンドで上、

0(ゼロ)コマンドでカレント行の行頭へ移動

$コマンドでカレント行の行末へ移動

ctrl+Fでページを前に

ctrl+Bでページを後ろに

:x  xに任意の数字を入れるとみたい行数のところにカーソルがいく


様々な編集操作

x・・・一文字削除

dd・・・1行削除

yy・・・1行コピー

nyy・・・n行コピー

p・・・カーソルの文字の次、または次の行にペースト

P・・・カーソルの文字の前、または前の行にペースト

u・・・カット、ペーストを一回取り消し


検索と置換

/文字列・・・文字列の検索

n・・・下方向への再検索

N・・・上方向への再検索

:対象の行 s/検索文字列/置換文字列/オプション・・・文字列を置換する



タイトルとURLをコピーしました