私はこれを私のmakefileに持っています
test:
cat t.txt | sort -t $$'\t' -k 2,2
しかし、「maketest」は私にこのエラーを与えます
cat t.txt | sort -t $'\ t'-k 2,2 sort:複数文字タブ `$ \ t'make:* [テスト]エラー2
Redhat Linuxでは正常に動作しますが、UbuntuLinuxでは失敗します
使用$'\t'
しようとしている構文はbash-ismですが、デフォルトではgmakeが/bin/sh
シェルとして使用します。次のように、makefileのSHELL変数をオーバーライドできます。
SHELL=/bin/bash
または、この特定のコマンドに対して明示的にbashを呼び出します。
test:
bash -c "cat t.txt | sort -t $$'\t' -k 2,2"
Q:これはどのOSで失敗していますか?
提案:
実際のタブに置き換えることができます。sort -t "<Ctl-V><Tab>"