[問題] system 執行bulit-in問題

看板Perl作者 (赫)時間12年前 (2012/09/17 21:48), 編輯推噓3(3014)
留言17則, 4人參與, 最新討論串1/1
想請教一個問題 透過perl 執行 system("alias") 會發生錯誤 似乎是perl無法執行built-in的命令 如果單單在linux執行alias 會list出 很多已宣告的 所以想來請教各位 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.171.5.36

09/17 22:50, , 1F
所以你想問/做什麼?
09/17 22:50, 1F

09/18 20:39, , 2F
在perl裡面執行system("alias");
09/18 20:39, 2F

09/20 22:28, , 3F
然後? 目的是什麼?
09/20 22:28, 3F

09/20 22:29, , 4F
直接跑alias我想不到有什麼意義
09/20 22:29, 4F

09/20 22:29, , 5F
你是要看user原本有哪些alias, 還是???
09/20 22:29, 5F

09/22 23:47, , 6F
我也想知道, 在 script 可以 source alias, perl 不行
09/22 23:47, 6F

09/25 20:33, , 7F
樓上這位大大似乎有理解我的意思
09/25 20:33, 7F

09/25 20:34, , 8F
簡單說就是:如何在perl裡面執行這一行程式(下方)
09/25 20:34, 8F

09/25 20:34, , 9F
system("alias");
09/25 20:34, 9F

09/25 20:35, , 10F
請各位前輩Keyin一次 如果成功~請指導我方法為何?
09/25 20:35, 10F

09/27 03:46, , 11F
system("/bin/bash -c 'source ~/.bashrc && alias'");
09/27 03:46, 11F

09/27 03:46, , 12F
alias 是 shell 的 built-in ,不是 system binary 所以
09/27 03:46, 12F

09/27 03:47, , 13F
system 找不到,不知道是不是這個原因 @@
09/27 03:47, 13F

09/27 21:03, , 14F
回樓上~是這樣說沒錯~~所以來請教大家有沒有其他方式
09/27 21:03, 14F

09/27 21:03, , 15F
我詢問過一些比較厲害的人,有聽過一個說法
09/27 21:03, 15F

09/27 21:04, , 16F
雖然是built-in不過,可以嘗試用open3的方式
09/27 21:04, 16F

09/27 21:04, , 17F
但是這方面的常識不是很了解,所以上來請教一下大家
09/27 21:04, 17F
文章代碼(AID): #1GLoed_V (Perl)
文章代碼(AID): #1GLoed_V (Perl)