cut
以下は、入力をフィールドに分割し、2番目のフィールドを取得するためにスペース区切り文字を使用する例です。
cut -f2 -d' '
区切り文字をスペースの代わりにタブとして定義するにはどうすればよいですか?
答え1
答え2
タブがデフォルトです。
よりカットマニュアルページ。
-d delim
Use delim as the field delimiter character instead of the tab
character.
だからあなたは書くことができます
cut -f 2
答え3
awk -F '\t' '{ print $2 }' inputfile
これにより、各入力行の2番目のタブで区切られたフィールドが抽出されますinputfile
。
答え4
あるいは、cutを関数にラップすることもできます。
function getColumns ()
{
local -r delimiter="${1:?}"
local -r columns="${2:?}"
if [[ "$delimiter" == '\t' || "$delimter" == "tab" ]]; then
cut "--fields=${columns}"
return
fi
cut "--delimiter=${delimiter}" "--fields=${columns}"
}