基本的bash shell命令

1、遍历目录
cd destination   //切换路径 destination可以是绝对路径或者相对路径(绝对路径用正斜线/作为起始,相对路径中,单点符(.)表示当前目录,双点符(..)表示当前目录的父目录)


cd               //切换到用户主目录   CLI显示的~代表当前工作目录位于用户home目录之下


pwd              //print work directory 打印当前工作目录


2、文件和目录列表


ls               //显示当前目录下的文件和目录  按字母排序(按行)


ls -i            //可以查看文件的inode编号


ls -F            //-F参数在目录名后加了正斜线/,可执行文件后加* 可执行文件的链接后加@


ls -d            //只列出目录本身内容,不列出其中内容


ls -a            //显示隐藏文件


ls -F -R         //-R列出当前目录下包含子目录中的文件


ls -l            //长列表格式的输出,第一行显示目录中包含的总块数,在每行中列出了单个文件或目录以及关于文件的一些信息:
                 //文件类型、文件权限、文件硬链接总数、文件属主的用户名、文件属组的用户名、文件大小、文件上次修改时间、文件名或目录名
                 //文件类型:目录(d)、文件(-)、字符型文件(c)、块设备(b)


可以将多个参数结合起来使用 eg: ls -alF


3、过滤输出列表


ls -l file       //用户可以指定特定文件的名称作为过滤器,此时只显示该文件信息


ls -l fi?e       //ls命令能够识别标准通配符,并在过滤器中用它们进行模式匹配(文件扩展匹配):?代表一个字符;*代表零个或多个字符;中括号[]表示一个字符位置并给出多个选择(可列出字符也可用-给出范围)或者用!将不需要的内容排除在外;
            
4、创建文件


touch file       //创建空文件,并将用户名作为文件的属主,此命令还可以用来改变文件的修改时间。这个操作并不需要改变文件内容。


touch -a file    //改变文件访问时间


ls -l --time=atime file     //显示文件访问时间


5、复制文件


cp source destination       //将文件从一个位置复制到另一个位置


cp file1 file2              //file1复制成file2,并且以file2命名


cp -i file1 file2           //file2已存在时,加-i会提示是否覆盖已有文件


cp -i file /home/...        //以/开头的是目录,注意不存在的目录用/开头,或者使用正确的相对路径,否则会创建成文件。


cp -R source destination    //递归地复制整个目录的内容


6、制表键(Tab)自动补全


使用制表键自动补全的技巧在于要给shell足够的文件名信息,使其能够将需要文件同其他文件区分开


7、链接文件


链接是目录中指向真实文件位置的占位符,在linux中有两种不同类型的文件链接:
a、符号链接:它指向存放在虚拟目录结构中某个地方的另一个文件。这两个通过符号链接在一起的文件,彼此的内容并不相同。要为一个文件创建符号链接,原始文件必须事先存在。然后利用ln命令以及-s 选项俩创建符号链接(ln -s datafile s1_datafile),创建出来的文件是两个不同的文件,其inode编号是不同的。
b、硬链接:会创建独立的虚拟文件,其中包含了原始文件的信息和为位置。但是他们从根本上而言是同一个文件,inode号也相同。引用硬链接文件等同于引用了源文件。要创建硬链接,原始文件也必须事先存在,只不过这次使用ln命令时不需要加入额外的参数了。(ln datafile h1_datafile)




注:只能对处于同一存储媒体的文件创建硬链接。要想在不同存储媒体的文件之间创建链接,只能用符号链接。


8、重命名文件


在linux 中,重命名文件被称为移动(moving)。mv命令可以将文件和目录移动到另一个位置或重新命名。


mv fall fzll         //将fall文件重命名为fzll


mv file directory    //mv命令也可以用来移动文件的位置,这一操作并不会改变文件的inode编号或时间戳




mv file directory/file2   //mv命令可以移动位置的同时修改文件名称。


9、删除文件


在linux中,删除(deleting)叫做移除(removing)。


rm -i file            //会询问是否要移除文件file,输入y确认移除


rm -i fi?e            //使用通配符删除成组文件


rm -f file            //使用-f参数强制删除文件,小心使用


10、创建目录


mkdir new_dir          //创建目录


mkdir -p new_dir/sub_dir/under_dir   //同时创建多个目录和子目录需要加入-p参数


10、删除目录


rmdir dir               //默认情况下,rmdir只删除空目录


rm -ri dir              //可以在整个非空目录上使用rm命令,使用-r选项使得命令可以向下进入目录,删除其中的文件,然后删除自身。


rm -rf dir              //此命令没有警告信息也没有信息提示,可以一口气删除目录及其所有内容,但是一个危险的工具


11、查看文件类型


file command.txt        //显示文件类型,eg:ASCII text、link、directory、脚本、二进制可执行文件


12、查看整个文件


cat file                //显示文本文件的内容


cat -n file             //-n参数给所有的行加上行号


cat -b file             //只给有文本的行加上行号


cat -T file             //不让制表符出现,-T参数会用^I字符组合替换文中的所有制表符


注:对于大的文件,cat命令有点繁琐。文件的文本会在显示器上一晃而过


more file               //more命令是分页工具,会在显示每页书记后停下来,按空格显示下一页,或按回车显示下一行,输入q退出。more命令只支持文本文件中的基本移动。


less file               //less命令是more的升级版,还支持上下键翻页。


man less                //man 命令可以浏览对应的手册页


13、查看部分文件


tial file               //默认查看后10行数据


tail -n 2 file          //输入-n修改所显示的行数 或者tail -2 file


注:-f参数是tail命令的一个突出特性。它允许你在其他进程使用该文件时查看文件内容。tail命令会保持活动状态,并不断显示添加到文件中的内容。这是实时监测系统日志的绝妙方式。


head file               //默认查看开头10行数据


head -n file            //修改显示的行数


注:文件开头通常不会改变,因此head命令并不像tail命令那样支持-f参数特性,head命令是一种查看文件起始部分内容的便捷方法。





















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值