我有两个脚本用于在嵌入式Linux系统上设置perf,除最后一行
外,它们工作正常#!/bin/bash
sudo route add -net 192.168.2.0 gw 192.168.42.1 netmask 255.255.255.0
scp -P 23 ~/perf_p7/perfSetup.sh 192.168.42.1:../tmp
ssh -p 23 192.168.42.1 bash ../tmp/perfSetup.sh
和
#!/bin/bash
mkdir /mnt/buildroot-target
IP=192.168.42.2
nfs.sh ${IP}
mount -o nolock,proto=tcp,addr=${IP} -t nfs ${IP}:/home/vclement/sfx1_build/Binaries/p7-arm/master/buildroot/target /mnt/buildroot-target/
alias perf='LD_LIBRARY_PATH=/mnt/buildroot-target/usr/lib /mnt/buildroot-target/usr/bin/perf'
alias perf='LD_LIBRARY_PATH=/mnt/buildroot-target/usr/lib /mnt/buildroot-target/usr/bin/perf'
似乎没有用,但是当我在控制台中手动运行它时,它可以正常工作,以便让我使用" perf"直接命令。
如果有人知道为什么会这样或有解决方法,谢谢你让我知道
答案 0 :(得分:0)
问题是alias
是bash的内置命令。当脚本结束时,它的效果会丢失。
如果您希望它也适用于您当前的shell,您必须“获取”第二个脚本,或者:
source ./<scriptname>
或:
. ./<scriptname>
答案 1 :(得分:0)
您可以使用功能。它们更适合于比简单命令更复杂的东西:
function perf() {
LD_LIBRARY_PATH=/mnt/buildroot-target/usr/lib /mnt/buildroot-target/usr/bin/perf
}