[code小心得]Shell Script error handle & make error show no target rule & Linux C rename API show: Invalid cross-device link
Hi 大家好 小弟久違的 來嘴砲一下
現在似乎 開始提倡 寫Code 需要有error hande,個人覺得這應該算是個好習慣。
那 如果 是 shell script 其實也是可以的喔。
參考 以前 保哥 老師的 blog
http://blog.miniasp.com/post/2009/02/13/Writing-Bash-script-should-care-about-error-handling-issues.aspx
和網路 其他人的資料
http://linuxcommand.org/wss0150.php
基本上 最上用的方式 就是 再執行 那個命令 之後用
$? 搭配 if else 做處理。
if [ $? -eq 0 ]
也有人 用 AND 或 OR XOR的方式 樣子更值接一點
if[ 使用的命令 eq 0]
只是上面寫法 似乎會變很長XD
當你再 make kernel 發生 error no target的時候 可以嘗試 用下列指令
apt-get install linux-headers-$(uname -r)
不過假如 沒有效的話 代表 要看
mkae -C 它是跑去哪個 folder 目錄 再來去做檢查了。
Linux C 有提供一些 API
e.g. remove , rename
但 有可能會遇到
mv 可以用 但 rename 不行的狀況。
如果 error handle show below message
Invalid cross-device link
那有其中一個可能是
因為在tmpfs 之下用
mv 有事先 做一個allocate mem ,但 rename 似乎是純粹 指向過去。
以上 下台一鞠躬
留言