0

私はこれを私の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では失敗します

4

2 に答える 2

1

使用$'\t'しようとしている構文はbash-ismですが、デフォルトではgmakeが/bin/shシェルとして使用します。次のように、makefileのSHELL変数をオーバーライドできます。

SHELL=/bin/bash

または、この特定のコマンドに対して明示的にbashを呼び出します。

test:
   bash -c "cat t.txt | sort -t $$'\t' -k 2,2"
于 2012-06-23T07:02:54.430 に答える
0

Q:これはどのOSで失敗していますか?

提案:

実際のタブに置き換えることができます。sort -t "<Ctl-V><Tab>"

于 2012-06-23T03:15:23.310 に答える