Csh

錯誤:cat中的單詞太多

  • May 5, 2016

我有一個 csv 文件,它使用文件名格式 yy-mm-dd_h 自動生成。csv文件內容:

Status  Filename
1       1A-W02_ws_r0_apr13_15_44.stdf
1       2A-W04_ws_r1_apr12_10_30.stdf
1       1A-W13_ws_r0_apr01_19_04.stdf

如果我執行此腳本,將生成 csv 文件。我必須使用 C shell 腳本為狀態和文件名創建一個數組。目前程式碼是:

set status = (`cat *`date +%F_%H`.csv | cut -d ',' -f1 | grep -v Status`)

如果有 2 個 csv 文件,我會使用 date +%F_%H 它來減少出錯的可能性(以防在腳本作業完成後 csv 文件沒有被刪除)。我遇到了錯誤

字太多了`

執行腳本時,但如果我不使用日期,腳本可以正常執行。程式碼出了什麼問題?

嵌套命令替換在csh. 將模式聲明為變數,然後使用該變數構造數組。

set pattern = `date +%F_%H`
set status = ( `cut -d, -f1 <*$pattern.csv | grep -v Status` )

引用自:https://unix.stackexchange.com/questions/281225