[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 的實作方式  和 rename不同。

mv 有事先 做一個allocate mem ,但 rename 似乎是純粹 指向過去。

以上  下台一鞠躬



留言