0
私は比較的単純な問題だと思っています。私はこのようなコードの一部を持っています:bashスクリプトで引数をループに渡す
#!/bin/bash
file=$(ls -l /home/user_name/)
for f in ${file}; do
awk 'NR==1{print $2}'
done
アイデアはこうです。システムには、ユーザ名user_name
があります。彼のホームフォルダの中には、1種類のファイルがあります。xxx.txt
、yyy.txt
としましょう。これらのファイルの中には、2番目の列を取りたいデータがあります(これはawkが使用されているものです)。このループを実行すると、ディレクトリ内のすべてのファイルがチェックされます。このようなファイルを追加すると、1つのファイルしかチェックされず、残りの部分はエラーが発生してレポートされます。
'ls -l'(小文字のアルファベット' 1')...そして、あなたは[lsからの出力](http://mywiki.wooledge.org/ParsingLs)を使うことを避けるべきです... '/ home/user_name/*。txt'で' for f 'を試してみてください'awk' NR == 1 {print $ 2} '"$ f" ' – Sundeep
、あるいはより単純なものになります。 forループの、単純な 'awk 'FNR == 1 {print $ 2}'/home/user_name/*。txt' – Sundeep