设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
注册
快捷导航
平台
Portal
论坛
BBS
文库
项目
群组
Group
我的博客
Space
搜索
搜索
热搜:
shell
linux
mysql
本版
用户
LinuxSir.cn,穿越时空的Linuxsir!
»
论坛
›
Linux 发行版讨论区 —— LinuxSir.cn
›
LFS(LinuxfromScratch)
›
关于脚本中的命令和命令别名的关系?
返回列表
查看:
639
|
回复:
4
关于脚本中的命令和命令别名的关系?
[复制链接]
wcf
wcf
当前离线
积分
102
IP卡
狗仔卡
发表于 2007-1-17 09:45:29
|
显示全部楼层
|
阅读模式
请问在shell脚本中的命令,比如:ls,cp等如果在启动时定义了别名,那么在脚本中的这些命令是执行的别名还是原命令本身?我试了一下,好象在脚本中,别名不起作用。这个在脚本手册中有说明吗?
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
wcf
wcf
当前离线
积分
102
IP卡
狗仔卡
楼主
|
发表于 2007-1-17 09:54:20
|
显示全部楼层
脚本问题
[ "${1}" != "" ] && runlevel=${1}
if [ "${runlevel}" = "" ]; then
echo "Usage: ${0} <runlevel>" >&2
exit 1
fi
上边这行的功能和下边是不是一样:
runlevel=${1}
if [ "${runlevel}" = "" ]; then
echo "Usage: ${0} <runlevel>" >&2
exit 1
fi
我觉得没有差别!但多了一个判断!
是不是这样,请高手指点!多谢!
回复
支持
反对
使用道具
举报
显身卡
VirusCamp
VirusCamp
当前离线
积分
762
IP卡
狗仔卡
发表于 2007-1-17 12:42:01
|
显示全部楼层
你指的是
alias rm 'rm -i'
这样的?
这是由profile 或 bashrc 执行的
1。启动脚本,无论如何都是在 profile 和 bashrc 之前执行的。
2。profile 和 bashrc 会判断是不是 intractive bash ,如果无人控制,是不会 alias 的。
回复
支持
反对
使用道具
举报
显身卡
wcf
wcf
当前离线
积分
102
IP卡
狗仔卡
楼主
|
发表于 2007-1-17 15:53:44
|
显示全部楼层
可能我没讲请楚,我的意思是:
在启动时,定义ls的别名:
alias ls='ls -l'
在启动之后,如果我写一个脚本:
#!/bin/bash
ls
那么结果是什么样的?是ls的结果还是ls -l的?
回复
支持
反对
使用道具
举报
显身卡
VirusCamp
VirusCamp
当前离线
积分
762
IP卡
狗仔卡
发表于 2007-1-17 21:01:08
|
显示全部楼层
alias 只在当前 shell 起作用.
用 source xxx.sh 时,会在shell 中起作用.
如果 alias 在 profile 或 bashrc 中,如果不判断 intractive bash ,直接 alias ,
./xxx.sh
时,bash 首先运行 profile 或 bashrc ,也就有 alias 的影响了.
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
服务器架设、应用、维护
开源软件专题讨论
Copyright © 2002-2023
LinuxSir.cn
(http://www.linuxsir.cn/) 版权所有 All Rights Reserved.
Powered by
RedflagLinux!
技术支持:
中科红旗
|
京ICP备19024520号
快速回复
返回顶部
返回列表