Mac端末で尾が機能しない

Mac端末で尾が機能しない

スクリプト言語の経験が不足していたので(Macユーザーにとっては恥ずかしいことですが)、次のようないくつかのソースを参照しました。 協会解決しそうだls *.extension | xargs -n 1 tail -n +2

> merged.txt最後の追加後もこれは私には機能しません。

for f in *.txt
do
    tail -n +2 $f >> /path/to/some/dir/with/files/file_name
done

sed -e'1d' $FILEまた、tailコマンドを交換してみました。役に立たない。

tail -n +2 file_name.extension、、、cat LIN_1994-11_0100.txt | tail -n +2awk 'FNR != 1' *.extensionファイルには影響しません。

わからないこれ現在の問題に関連するすべて。または協会この質問に関連しています。

誰もがこの問題の原因や解決策を見つけることができれば...大変感謝します。できるだけ多くの洞察を得るために、この質問を他のコミュニティからここに移しました。

答え1

tail示されているように、Macでは動作しないと述べられた主張は間違っています(明確にforするためにループに改行とインデントが追加されました)。

$ for i in {1..3}; do 
    for file in foo bar; do 
      echo "$i  $file" >> $file
    done
done
$ paste foo bar
1  foo  1  bar
2  foo  2  bar
3  foo  3  bar
$ tail -n+2 -q * > output
$ cat output
2  bar
3  bar
2  foo
3  foo
$ uname -a
Darwin recacted-hostname 17.2.0 Darwin Kernel Version 17.2.0: Fri Sep 29 18:27:05 PDT 2017; root:xnu-4570.20.62~3/RELEASE_X86_64 x86_64

答え2

もともと見つかった答えは、質問自体の編集内容でした。

問題はファイル形式にあります!コマンドが機能するmac2unixようにファイルを変更してください。tailそして協会これからも同じ問題が発生する可能性のある方のため。あなたの関心とコメントに感謝します!

関連情報