shell(48)

48follower
kawaharasouta さんのアバター 10views

shell 行の先頭に文字列を加える

出力形式を他と合わせるために、先頭に空白を入れたかったので。 cat test.txt | awk '{print " ", $0}' こんな感じでawkをパイプで繋いどきました。 多分もっと賢く使えると思うんですが、、、とりあえ... 2016年10月11日
kawaharasouta さんのアバター 20views

シェルスクリプト ファイルを一行ずつ読みつつ処理 while read

whileとreadを使います。 cat test.txt | while read line do //処理内容 done みたいな感じにすると、test.txの内容を一行ずつlineに読みながら処理をすることができます。 ... 2016年10月11日
kawaharasouta さんのアバター 12views

シェルスクリプト ファイルを空にする

echo -n > hoge.txt -nコマンドを入れないと改行がはいってしまいます。 他にもたくさんやり方があるみたいです→こちら ... 2016年10月11日
@gorogoroIT さんのアバター 30views

ランダムな文字列を生成

初期パスワードを作成する場合など、ランダムな文字列を生成。 英字(大文字+小文字) 10桁の文字列を5個出力。 $ cat /dev/urandom | tr -dc "[:alpha:]" | fold -w 10 | head -... 2016年9月4日
kawaharasouta さんのアバター 26views

シェルスクリプト ブレース展開

{}を使って複数のファイル、文字指定などを簡単にすることが出来る。 /User/xxx/hoge.txt と /User/xxx/huga.txt を削除したい時 rm /User/xxx/hoge.txt /User/xxx/huga... 2016年9月1日
kawaharasouta さんのアバター 34views

シェルスクリプト 文法チェック

スクリプトを実行せずに文法チェックを行なうことが出来る。 sh -n test.sh 文法エラーがない場合の出力 //出力無し 文法エラーがある場合の出力 test.sh: line 5: syntax error near ... 2016年9月1日
kawaharasouta さんのアバター 49views

文字列を文字数で切り取る awkコマンド

プログラミングではよく一番初めの文字は「0番目」ですが、awkコマンドでは「1番目」になります。使ってみればわかりますが、ご注意を。。。 3文字目より後ろを抜き出す $ echo 'abcde' | awk '{print substr... 2016年8月26日
kawaharasouta さんのアバター 39views

シェルスクリプト 変数を、間に改行を入れて連結

str1="aaa" str2="bbb" str=$str1$str2 echo -e ${str} とすると、普通に連結できて、「aaabbb」というふうになります。 aaaとbbbの間に改行を含みたかったら、 str1="aaa... 2016年8月25日
kawaharasouta さんのアバター 9views

シェルスクリプト ファイルの有無で分岐

if [ -f test.txt]; then test.txtがある場合の処理 else test.txtがない場合の処理 fi という風にifで分岐できます。 ... 2016年8月25日
Yuya Sato さんのアバター 20views

サブシェル

コマンドを()で括ることによって、元のシェルは子プロセスを生成しサブシェルとしてコマンドを実行することができます。 サブシェルは子プロセスとして実行されるので親の環境変数などを変更したくない時など様々な使用法があります。 一時的に環境変数... 2016年8月24日
@iwasaki さんのアバター 190views

Gmailを使ったメールアドレス自動生成コマンド

Gmailでは hoge+XXX@gmail.com のような形式のメールアドレスを利用することができます。 例えばメールアドレス登録でアカウントを発行するシステムを開発する際にはこの機能を使って検証をすると便利です。ただ毎回メアドを... 2016年8月17日
kawaharasouta さんのアバター 29views

sed コメントアウト

コメントアウトを1~5行目に挿入 sed "1,5s/^/#/ig" test.txt 1~5行目のコメントアウトを削除 sed "1,5s/^#//ig" test.txt ただこれだと、コメントアウトが挿入、削除されたものが... 2016年8月12日
Yuya Sato さんのアバター 23views

[Shell]指定した特定の行だけ出力する

ファイルなどから?行目だけと指定した行の部分を出力するには以下のような方法があります。 5行目を出力 $ sed -n 5p <file> また以下でも可能です。 5行目を出力 cat <file> | ... 2016年8月12日
Yuya Sato さんのアバター 59views

指定した文字列を含まない行を抽出するためのコマンド

grepコマンドでは標準出力の中で指定した文字列を含む行を抽出するコマンドです。 $ cat hoge.txt | grep "huga" これとは逆に、指定した文字列を含まない行を抽出するためにはgrepの-vオプションを用います。... 2016年7月25日
Yuya Sato さんのアバター 37views

シェルスクリプトでのエラー処理

シェルスクリプトでechoなどを標準エラー出力に出力したい場合は echo "hogehoge" 1>&2 として標準出力を標準エラー出力にリダイレクトする。 また、これを使ってエラー出力のために、 function... 2016年6月30日
kawaharasouta さんのアバター 15views

shell 変数の改行を表示させる

shellで、改行を含んでいる変数を普通に echo $str としただけでは、ちゃんと改行してくれない。 ちゃんと改行させるには、、 echo "$str" とするか、 echo -e $str とするとちゃんと改行して... 2016年6月24日
kawaharasouta さんのアバター 12views

変数を改行で分ける

for文で回すと改行ごとに区切ってくれるみたい。 例えば、strが改行を含んだ変数だとすると、 for i in $str; do echo "文字列:${i}" done こんな感じのことをすると、strが改行ごとに区切られ... 2016年6月23日
Tomoumi Nishimura さんのアバター 49views

コンソール出力に色付けする

ANSIエスケープコードを利用すると、コンソール出力に色付けすることができます。 print("\u001b[31m") print("hogehoge") print("\u001b[00m") 1行目のprint文によって色付けす... 2016年6月16日
Tomoumi Nishimura さんのアバター 36views

shellスクリプトで配列を使う

配列の作成 hoge=(foo bar fuga) # -> [foo, bar, fuga]を要素とする配列hogeが作成される 配列の参照 echo $hoge # -> foo echo ${hoge[0]} #... 2016年3月31日
Tomoumi Nishimura さんのアバター 309views

Shellスクリプトでn番目以降の引数全てを取得する

Shellスクリプトで、第一番目の引数だけを消費して、残りの引数はその先のプログラムに渡したい、とかそういうときに使えます。 drop2() { echo ${@:3} } drop2 1 2 3 4 5 6 # -> "3 ... 2016年3月25日