[vagrant@localhost shell]$ which bash
/bin/bash
[vagrant@localhost shell]$ cat -A hello
#!/bin/bash^M$
^M$
echo hello
^Mがあるのがよろしくない
tr(ティーアール)はUNIXおよびUNIX系システムのコマンドである。名称は translate または transliterate の略。
tr は標準入力から読み込んで標準出力に出力する。パラメータとして2つの文字集合を指定し、一方の文字集合に含まれる文字が出現する度に、もう一方の文字集合の同じ位置にある文字に置換して出力する。
sed(セド)は、入力ストリーム(ファイルまたはパイプラインからの入力)に対してテキスト変換などのデータ処理をおこなうために使用されるプログラム
文字列の置き換えは「s」コマンドを使って、「s/置換前/置換後/」と指定します。例えば、文字列「GNU」を「gnu」に置き換えるならば、「s/GNU/gnu/」と指定します。
[vagrant@localhost shell]$ sed -e s/^M// hello
#!/bin/bash
echo hello
改行コードを変換する
[vagrant@localhost shell]$ sed -i 's/\r//' hello [vagrant@localhost shell]$ cat -e hello #!/bin/bash$ $ echo hello[vagrant@localhost shell]$ ./hello hello
変数を使用する
#!/bin/bash name="yoshida" echo "hello world $name" echo "foo ${name}san"; echo "bar"
[vagrant@localhost shell]$ sed -i ‘s/\r//’ hello
[vagrant@localhost shell]$ ./hello
hello world yoshida
foo yoshidasan
bar