shell script 中的sed傳遞變數請益 - Linux

David avatar
By David
at 2019-03-26T14:53

Table of Contents


大家好

我想利用修改crondtab的方式來達成esxi排程關機

在shell script中寫

sed -i '$a 40 9 $1 $2 * /sbin/poweroff ' file name

然後使用 sh xxx.sh 22 3

原本是期望能將月,日的參數傳進去$1,$2裡

結果看檔案最後一行還是一樣是$1,$2

Google了一下,嘗試把單引號改成雙引號

結果會出現sed:unsupported command 9

想請教一下該如何修正呢?謝謝!

--
Tags: Linux

All Comments

Anthony avatar
By Anthony
at 2019-03-27T01:43
你要不要先查sed的用法?
Anonymous avatar
By Anonymous
at 2019-03-31T23:45
改雙引號後 $a 前面需加個反斜線成 \$a
Christine avatar
By Christine
at 2019-04-01T16:09
原來那個 $a 是在最後一行後附加的意思
Emily avatar
By Emily
at 2019-04-02T21:49
我知道$a是在最後一行附加的意思(這就是我想要的)
Madame avatar
By Madame
at 2019-04-05T20:48
謝謝2F,看來是類似脫逸字元的用法,我明天再試試看!
Jack avatar
By Jack
at 2019-04-07T18:39
這樣也可: sed -i '$a'"40 9 $1 $2 * /sbin/poweroff" file
Todd Johnson avatar
By Todd Johnson
at 2019-04-10T14:11
沒條件的在最後一行附加上去,echo 不就好了...
Carolina Franco avatar
By Carolina Franco
at 2019-04-15T04:42
awk, sed 碰到這種我都用 sed 'aaaaa' "$var" 'aaaa'
Hedwig avatar
By Hedwig
at 2019-04-15T23:03
單雙引號間不用/能空格,純粹是方便閱讀

atrm有刪除所有排程的參數嗎?

Candice avatar
By Candice
at 2019-03-26T09:08
大家好,因為目前管理的主機與類型蠻多的 想寫一支自動化的程式來管理 其中在Linux系統方面會用到自動SSH登入再下指令 我的問題是,我可能會用到at這個指令來新增一個排程 同時偶爾也想要自動刪除排程 如果是人工作業,我可以先atq查詢後,再用atrm來刪除特定排程 不過想請教的是,atrm是否有 ...

RPi0W 使用 g_multi Mac OS 偵測不到

Thomas avatar
By Thomas
at 2019-03-23T22:12
目前拿 RPi0W 試著安裝 g_multi (使用 archlinux) 透過 g_multi 我可以用 RPi0w 跟我自己的 archlinux server 連線 ether / serial 跟 mass storgae 都可以 但是同樣的環境在 Mac OS (mini server) 上卻 ...

請問 WINE 版本的 Steam 怎麼正常顯示繁體中文?

Irma avatar
By Irma
at 2019-03-23T20:29
Linux 原生版本的 Steam 可以正常顯示繁體中文, 但用 WINE 安裝的 Steam 不能正常顯示繁體中文, 只要選擇了繁體中文,字體全都會變成豆腐, 請問如何將 WINE Steam 的繁體中文正常顯示呢? - ...

Raspberry Pi 3+的問題

Isabella avatar
By Isabella
at 2019-03-22T20:45
最近有想買片Raspberry Pi3 B+來回來研究Linux on arm 只是有幾個問題想請教 1. 因為目前只有筆電 沒有瑩幕可以接hdmi 那如果我買了rpi3回來 有辦法直接透過uart pin做溝通嗎? 2. rpi3 B+是可以直接用usb micro接筆電供電嗎? 還是一定要接2 ...

判斷檔案文字增加 就寄信

Sandy avatar
By Sandy
at 2019-03-21T15:59
不好意思 小弟linux 系統 菜逼巴 使用的是centos7 最近用python 成功寫了ㄧ個爬蟲 把內容輸出成ㄧ個檔案 但這個檔案會因爲爬到的內容而改變 如果內容增加 就發mail給自己 但crontab 是ㄧ天 一次 不想每天都收到信 並且收到的信 只有增加的內容 我想法是 寫ㄧ個s ...