逆引きUNIXコマンド/sedで列の順序を入れ替える方法
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#navi(../)
* sedコマンドでスペース区切りやCSVの列の順序を入れ替える...
sedコマンドを使って単語文字列の順書を簡単に入れ替えること...
例えば、スペース区切りの文字列群だったり、カンマ区切りの...
実際には、文字列なしの区切りもあると思うので、~
以下紹介の構文では意図した動作にならない場合もあると思い...
sedによる文字列の入替えの参考としてください。
#contents
* 関連記事 [#ufb2eff0]
-[[スペースが含まれる文字列を1行として扱う方法>逆引きシェ...
-[[スペース区切りの文字列を配列に格納する方法>逆引きシェ...
* 単語の並び替え(順序の変更) [#o030a3b0]
sedコマンドでは、 ''\(正規表現\)'' でヒットした文字列を '...
複数の ''\(正規表現\)'' ''\(正規表現\)'' ''\(正規表現\)''...
実際に以下で sed コマンドを使って幾つかの動作例を記します。
- スペース区切りの単語を左右逆にしてみました。
$ echo "Windows Linux" | sed 's/\(.*\) \(.*\)/\2 \1/g'
Linux Windows
- スペース区切りの単語群の順番を逆にしてみました。
$ STRING='debian ubuntu centos opensuse'
$ echo $STRING | sed 's/\(.*\) \(.*\) \(.*\) \(.*\)/\4 \...
opensuse centos ubuntu debian
- カンマ区切りの単語を左右逆にしてみました。
$ echo "Windows,Linux" | sed 's/\(.*\),\(.*\)/\2,\1/g'
Linux,Windows
- カンマ区切りの単語群の順番を逆にしてみました。
$ STRING='debian,ubuntu,centos,opensuse'
$ echo $STRING | sed 's/\(.*\),\(.*\),\(.*\),\(.*\)/\4,\...
opensuse,centos,ubuntu,debian
上記の通り、 ''\(正規表現\)'' と \番号 で単語群の入替えを...
* スペース区切りで保存されているファイルの列を入れ替える ...
スペース区切りで保存してあるファイルの内容を列を逆順にし...
$ cat linux.txt
debian ubuntu centos opensuse
debian ubuntu centos opensuse
- sedコマンドにファイル名を指定し並び替えを行っています。
$ sed 's/\(.*\) \(.*\) \(.*\) \(.*\)/\4,\3,\2,\1/g' linu...
opensuse,centos,ubuntu,debian
opensuse,centos,ubuntu,debian
- catコマンドの出力をsedコマンド渡し並び替えを行っていま...
$ cat linux.txt | sed 's/\(.*\) \(.*\) \(.*\) \(.*\)/\4,...
opensuse,centos,ubuntu,debian
opensuse,centos,ubuntu,debian
* 一行ごとに何らかの処理を行う場合 [#g6091f08]
一行ごとに読み込み、何らかの処理をする場合は、以下ように...
for L in `cat data.csv`
do
何らかの処理
done
この場合は、IFSパラメータを設定しないと意図した動作になり...
以下リンクの記事を参考にしてください。
-[[スペースが含まれる文字列を1行として扱う方法>逆引きシェ...
-[[スペース区切りの文字列を配列に格納する方法>逆引きシェ...
以上、sedコマンドを使ってスペース区切りやCSVの列の順序を...
#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
終了行:
#navi(../)
* sedコマンドでスペース区切りやCSVの列の順序を入れ替える...
sedコマンドを使って単語文字列の順書を簡単に入れ替えること...
例えば、スペース区切りの文字列群だったり、カンマ区切りの...
実際には、文字列なしの区切りもあると思うので、~
以下紹介の構文では意図した動作にならない場合もあると思い...
sedによる文字列の入替えの参考としてください。
#contents
* 関連記事 [#ufb2eff0]
-[[スペースが含まれる文字列を1行として扱う方法>逆引きシェ...
-[[スペース区切りの文字列を配列に格納する方法>逆引きシェ...
* 単語の並び替え(順序の変更) [#o030a3b0]
sedコマンドでは、 ''\(正規表現\)'' でヒットした文字列を '...
複数の ''\(正規表現\)'' ''\(正規表現\)'' ''\(正規表現\)''...
実際に以下で sed コマンドを使って幾つかの動作例を記します。
- スペース区切りの単語を左右逆にしてみました。
$ echo "Windows Linux" | sed 's/\(.*\) \(.*\)/\2 \1/g'
Linux Windows
- スペース区切りの単語群の順番を逆にしてみました。
$ STRING='debian ubuntu centos opensuse'
$ echo $STRING | sed 's/\(.*\) \(.*\) \(.*\) \(.*\)/\4 \...
opensuse centos ubuntu debian
- カンマ区切りの単語を左右逆にしてみました。
$ echo "Windows,Linux" | sed 's/\(.*\),\(.*\)/\2,\1/g'
Linux,Windows
- カンマ区切りの単語群の順番を逆にしてみました。
$ STRING='debian,ubuntu,centos,opensuse'
$ echo $STRING | sed 's/\(.*\),\(.*\),\(.*\),\(.*\)/\4,\...
opensuse,centos,ubuntu,debian
上記の通り、 ''\(正規表現\)'' と \番号 で単語群の入替えを...
* スペース区切りで保存されているファイルの列を入れ替える ...
スペース区切りで保存してあるファイルの内容を列を逆順にし...
$ cat linux.txt
debian ubuntu centos opensuse
debian ubuntu centos opensuse
- sedコマンドにファイル名を指定し並び替えを行っています。
$ sed 's/\(.*\) \(.*\) \(.*\) \(.*\)/\4,\3,\2,\1/g' linu...
opensuse,centos,ubuntu,debian
opensuse,centos,ubuntu,debian
- catコマンドの出力をsedコマンド渡し並び替えを行っていま...
$ cat linux.txt | sed 's/\(.*\) \(.*\) \(.*\) \(.*\)/\4,...
opensuse,centos,ubuntu,debian
opensuse,centos,ubuntu,debian
* 一行ごとに何らかの処理を行う場合 [#g6091f08]
一行ごとに読み込み、何らかの処理をする場合は、以下ように...
for L in `cat data.csv`
do
何らかの処理
done
この場合は、IFSパラメータを設定しないと意図した動作になり...
以下リンクの記事を参考にしてください。
-[[スペースが含まれる文字列を1行として扱う方法>逆引きシェ...
-[[スペース区切りの文字列を配列に格納する方法>逆引きシェ...
以上、sedコマンドを使ってスペース区切りやCSVの列の順序を...
#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
ページ名: