lash终端中的l(小写L)命令

时间:2012-03-12 19:00:45

标签: bash shell terminal command

vikram@vikram-Studio-XPS-1645:~/comp$ l
3rdParty/    que.ico     SE32.EXE   start.fgx  Supp/         WebResources/
autorun.inf  Readme.txt  START.EXE  start.fgz  Walkthrough/
vikram@vikram-Studio-XPS-1645:~/comp$ ls
3rdParty     que.ico     SE32.EXE   start.fgx  Supp         WebResources
autorun.inf  Readme.txt  START.EXE  start.fgz  Walkthrough
vikram@vikram-Studio-XPS-1645:~/comp$ 

这两个命令有什么区别?

我尝试$ which l,但没有输出。

$ man l也没有结果。

我也尝试过谷歌。

4 个答案:

答案 0 :(得分:15)

l可能是ls -F之类的别名。 -F选项会导致ls/附加到目录名称,*附加到可执行的常规文件等。

更新:根据您的评论,l的别名为ls -CF。单个字母选项可以“捆绑”,因此ls -CF相当于ls -C -F-C选项使ls按列列出条目。如果ls认为它正在写入终端,则这是默认值; -C选项使其无条件地以这种方式运行。 (ls -1每行列出一个条目,如果ls未写入终端,则为默认条目。)

type -a l应该告诉你它是如何定义的。它可能设置在$HOME/.bashrc

$是shell提示符的一部分,而不是命令的一部分。)

答案 1 :(得分:0)

据我所知,没有一般命令'l'存在,甚至没有'ls'这就是为什么which lman l的结果为空

你的路径上有一些名为l的东西可能会运行ls吗?

答案 2 :(得分:0)

查找其别名的方法是检查〜/ .bashrc文件

$sudo cat ~/.bashrc | grep 'alias l='
alias l='ls -CF'

答案 3 :(得分:-1)

它是“ls”的特定bash命令。

ilia@Latitude-E6410:~$ mkdir ltest
ilia@Latitude-E6410:~$ cd ltest
ilia@Latitude-E6410:~/ltest$ echo 321 > 321.txt
ilia@Latitude-E6410:~/ltest$ echo 123 > 123.txt
ilia@Latitude-E6410:~/ltest$ ls
123.txt  321.txt
ilia@Latitude-E6410:~/ltest$ l
123.txt  321.txt
ilia@Latitude-E6410:~/ltest$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz
ilia@Latitude-E6410:~/ltest$ whereis asdasdasd #This command doesn't exists
asdasdasd:
ilia@Latitude-E6410:~/ltest$ whereis l #Results of "whereis l" and "whereis asdasdasd" are same
l:
ilia@Latitude-E6410:~/ltest$ sh #Try "l" in sh
$ ls #"ls" is working
123.txt  321.txt
$ l #But "l" doesn't
sh: 2: l: not found
$