このような行を持つファイルがある場合
/some/random/file.csv:some string
/some/random/file2.csv:some string2
コロンの前に最初の部分のみがあるファイルを取得する方法はありますか?.
/some/random/file.csv
/some/random/file2.csv
Bash one linerを使用したいだけですが、Perlまたはpythonも使用できます。
cut -d: -f1
または
awk -F: '{print $1}'
または
sed 's/:.*//'
別の純粋なBASH方法:
> s='/some/random/file.csv:some string'
> echo "${s%%:*}"
/some/random/file.csv
別の純粋なBashソリューション:
while IFS=':' read a b ; do
echo "$a"
done < "$infile" > "$outfile"
これは何度も尋ねられているので、1000ポイントを超えるユーザーがこれを求めるのは奇妙です
しかし、別の方法を示すためだけに:
echo "/some/random/file.csv:some string" | awk '{sub(/:.*/,x)}1'
/some/random/file.csv