我想要一个别名,该别名以“。”的字典顺序给出目录列表。文件。似乎可以通过以下几种方法来完成此任务,而无需编写自己的脚本(这不是真正的问题):使用来设置语言环境LC_ALL="C"
。(这是根据排序手册页以及其他多个站点)的。
但是,将语言环境设置为“ C”会(并且确实)会导致某些软件安装中断。因此,我的短期解决方案与此类似(为简便起见,这没有其他ls选项):
alias ls='(LC_ALL="C"; /bin/ls)'
但是,这不允许将参数“传递”到子外壳中。
这当然行不通:
alias ls='(LC_ALL="C"; /bin/ls $*)'
有没有一种方法可以使用简单的别名来处理?(与编写Shell脚本/函数相反,我可以这样做)。
您不需要子shell。您可以通过在命令前添加变量赋值(不带分号)来仅更改以下命令的环境。比较例如输出
LC_ALL=C env | grep LC_ALL
与的输出
env | grep LC_ALL
因此,总而言之,以下别名应该对您有用:
alias ls='LC_ALL=C /bin/ls'
我曾/bin/ls
在您的示例中使用过,但正如Kamil Maciorowski在对另一个答案的评论中所指出的那样,您键入的ls
命令也可能是别名,因此也许您也应该考虑该替代方法:
alias ls='LC_ALL=C ls'
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句