## .bashrc の設定
ターミナルセッションの設定と、便利なエイリアス各種を設定します。以下の例では ls
に手を加えています。
~/.bashrc
if [ $UID -eq 0 ]; then
PS1="\[\033[31m\]\u@\h\[\033[00m\]:\w\n\$ "
else
PS1="\[\033[34m\]\u@\h\[\033[00m\]:\[\033[36m\]\w\[\033[00m\]\\n\$ "
fi
export LSCOLORS=cxfxexdxbxegedabagacad
alias ls="ls -FG --color=auto"
alias ll="ls -lh"
alias tree="tree -C"
alias back="cd $OLDPWD"
alias py="python3"
## リダイレクト
command > file # 標準出力を上書きして書き込み
command >> file # 標準出力を追加書き込み
command 2> file # 標準エラー出力を上書きして書き込み
command &> file # 標準出力、エラー出力を同一ファイルに書きこみ
## for による繰り返し
ファイル名のループ:
for file in *.txt; do
echo "$file"
done
seq
を使った連番生成:
for i in $(seq 1 10); do
echo $i
done
ブレース展開↗を使用した連番生成:
for i in {1..10}; do
echo $i
done
## ファイルを読み込む
while read line; do
echo "$line"
done < "file.txt"
## ヒアドキュメント
bashのヒアドキュメントを活用する - Qiita
ヒアドキュメントとは複数行の文字列を簡潔に記述するための機能です。これをecho 'hoge'echo 'fuga'echo 'piyo'こんな風に記述できますcat << EOSh…

cat << EOF
hoge
fuga
EOF
ヒアドキュメントをファイルに書き込む:
cat << EOF > "file.txt"
hoge
fuga
EOF
## find コマンドの活用
# ファイルを検索して消す
find . -name "*.txt" -type f | xargs rm
# ファイルの容量を見る
find . -name "*.txt" -type f | xargs ls -lh
# ファイルから共通する行を抽出
find . -name "*.txt" -type f | xargs cat | grep "string"
# ファイルを特定のディレクトリに移動
find . -name "*.txt" -type f | xargs -I{} mv {} ./path/to/dir
## sed
ファイルの中身を表示:
# 1,3行目を標準出力
sed -n 1,3p file.txt
ファイルの中身を正規表現で置換:
# hoge を fuga にすべて置換して標準出力
sed "s/hoge/fuga/" file.txt
# 置換した内容を上書き
sed -i "s/hoge/fuga/" file.txt
# 3行目のみ置換
sed -e "3 s/hoge/fuga/g" file.txt
## awk
やる気出たら書きます…
記事がありません