Linux常见操作命令
1.展示目录列表命令ls(list)
ls 展示当前目录下的可见文件
ls -a 展示当前目录下所有的文件(包括隐藏的文件)
ls -l(ll) 展示当前目录下文件的详细信息
ll -a 展示当前目录下所有文件的详细信息
ll -h 友好的显示当前目录下文件的详细信息(其实就是文件的大小可读性更强了)
pwd:显示目前的目录
2.切换目录命令cd(change directory)
cd test 切换到test目录下
cd … 切换到上一级目录
cd / 切换到系统根目录下
cd ~ 切换到当前用户的根目录下
cd - 切换到上一级所在的目录
3.Linux系统中使用以下命令来查看文件的内容:
cat 由第一行开始显示文件内容
tac 从最后一行开始显示,可以看出 tac 是 cat 的倒著写!
nl 显示的时候,顺道输出行号!
more 一页一页的显示文件内容
less 与 more 类似,但是比 more 更好的是,他可以往前翻页!
head 只看头几行
tail 只看尾巴几行
-
more指令 —— 分页显示文件内容
more指令会以一页一页的形式显示文件内容,按空白键(space)显示下一页内容,按Enter键会显示下一行内容,按 b 键就会往回(back)一页显示,其基本用法如下:more file1 查看文件file1的文件内容; more -num file2 查看文件file2的内容,一次显示num行; more +num file3 查看文件file3的内容,从第num行开始显示;
-
less指令 —— 可以向前或向后查看文件内容
less指令查看文件内容时可以向前或向后随意查看内容;
less指令的基本用法为:less file1 查看文件file1的内容; less -m file2 查看文件file2的内容,并在屏幕底部显示已显示内容的百分比; 按空格键显示下一屏的内容,按回车键显示下一行的内容; 按 U 向前滚动半页,按 Y 向前滚动一行; 按[PageDown]向下翻动一页,按[PageUp]向上翻动一页; 按 Q 退出less命令;
-
head指令 —— 查看文件开头的内容
head指令用于显示文件开头的内容,默认情况下,只显示文件的头10行内容;
head指令的基本用法:head -n <行数> filename 显示文件内容的前n行; 例如:head -n 5 file1 显示文件file1的前5行内容 head -c <字节> filename 显示文件内容的前n个字节; 例如:head -c 20 file2 显示文件file2的前20个字节内容
-
tail指令 —— 显示文件尾部的内容
tail指令用于显示文件尾部的内容,默认情况下只显示指定文件的末尾10行;
tail指令的基本用法:tail file1 显示文件file1的尾部10行内容; tail -n <行数> filename 显示文件尾部的n行内容; 例如:tail -n 5 file1 显示文件file1的末尾5行内容 tail -c <字节数> filename 显示文件尾部的n个字节内容; 例如:tail -c 20 file2 显示文件file2的末尾20个字节
-
cat指令 —— 显示文件内容
使用cat命令时,如果文件内容过多,则只会显示最后一屏的内容;
cat指令的基本用法:cat file1 用于查看文件名为file1的文件内容; cat -n file2 查看文件名为file2的文件内容,并从1开始对所有输出的行数(包括空行)进行编号; cat -b file3 查看文件名为file3的文件内容,并从1开始对所有的非空行进行编号;
4.目录的创建(mkdir)和删除(rmdir)命令
mkdir test 在当前目录下创建一个test目录
mkdir -p test/a/b 在test目录下的a目录下创建一个b目录,如果上一级目录不存在,则连它的父目录一起创建
rmdir test 删除当前目录下的test目录(注意:该命令只能够删除空目录)
5.文件的创建(touch)和删除(rm)命令
touch test.txt 在当前目录下创建一个test.txt的文件
rm test.txt 删除test.txt的文件(带询问的删除,需输入y才能删除)
rm -f test.txt 直接删除text.txt文件
rm -r test 递归删除,即删除test目录以及其目录下的子目录(带询问的删除)
rm -rf test 直接删除test目录以及其目录下的子目录
6.文件打包或解压命令tar
Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。
而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。
命令:tar -zcvf 打包压缩后的文件名 要打包压缩的文件
其中:
- 调用gzip压缩命令进行压缩
- 打包文件
- 显示运行过程
- 指定文件名
示例:打包并压缩/test下的所有文件 压缩后的压缩包指定名称为duo.tar.gz
tar -zcvf duo.tar.gz a1.txt b2.txt c3.txt 或: tar -zcvf duo.tar.gz /test/*
解压压缩包(重点)
命令:tar [-xvf] 压缩文件
其中:x:代表解压
示例:将/test下的xxx.tar.gz解压到当前目录下
tar -xvf xxx.tar.gz
示例:将/test下的xxx.tar.gz解压到根目录/usr下
tar -xvf xxx.tar.gz -C /usr------C代表指定解压的位置
7.文件/文件夹的cp rm及文件的查看
cp (复制文件或目录),cp 即拷贝文件和目录。
语法:
[root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination)
[root@www ~]# cp [options] source1 source2 source3 … directory
选项与参数:
- -a:相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用)
- -d:若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;
- -f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
- -i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
- -l:进行硬式连结(hard link)的连结档创建,而非复制文件本身;
- -p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);
- -r:递归持续复制,用於目录的复制行为;(常用)
- -s:复制成为符号连结档 (symbolic link),亦即『捷径』文件;
- -u:若 destination 比 source 旧才升级 destination !
用 root 身份,将 root 目录下的 .bashrc 复制到 /tmp 下,并命名为 bashrc
[root@www ~]# cp ~/.bashrc /tmp/bashrc
[root@www ~]# cp -i ~/.bashrc /tmp/bashrc
cp: overwrite `/tmp/bashrc’? n <==n不覆盖,y为覆盖
rm (移除文件或目录)
语法:
rm [-fir] 文件或目录
选项与参数:
- -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
- -i :互动模式,在删除前会询问使用者是否动作
- -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
将刚刚在 cp 的实例中创建的 bashrc 删除掉!
[root@www tmp]# rm -i bashrc
rm: remove regular file `bashrc’? y
如果加上 -i 的选项就会主动询问喔,避免你删除到错误的档名!
mv (移动文件与目录,或修改名称)
语法:
[root@www ~]# mv [-fiu] source destination
[root@www ~]# mv [options] source1 source2 source3 … directory
选项与参数:
- -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
- -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
- -u :若目标文件已经存在,且 source 比较新,才会升级 (update)
复制一文件,创建一目录,将文件移动到目录中
[root@www ~]# cd /tmp
[root@www tmp]# cp ~/.bashrc bashrc
[root@www tmp]# mkdir mvtest
[root@www tmp]# mv bashrc mvtest
将某个文件移动到某个目录去,就是这样做!
将刚刚的目录名称更名为 mvtest2
[root@www tmp]# mv mvtest mvtest2
8.文件重命名
mv 原文件名 新文件名
例:mv asd.txt main.txt 将文件asd.txt重命名为main.txt
rename 原文件名 新文件名
例: rename asd main asd1.txt asd2.txt asd4.txt
[root@gxpt002 hjy]# ll
total 8
-rw-r--r-- 1 root root 0 Mar 4 15:38 asd1.txt
-rw-r--r-- 1 root root 0 Mar 4 15:38 asd2.txt
-rw-r--r-- 1 hdfs hadoop 196 Mar 3 17:25 asd4.txt
-rw-r--r-- 1 root root 87 Mar 4 15:29 wq.sh
[root@gxpt002 hjy]# rename asd main asd1.txt asd2.txt asd4.txt
[root@gxpt002 hjy]# ll
total 8
-rw-r--r-- 1 root root 0 Mar 4 15:38 main1.txt
-rw-r--r-- 1 root root 0 Mar 4 15:38 main2.txt
-rw-r--r-- 1 hdfs hadoop 196 Mar 3 17:25 main4.txt
-rw-r--r-- 1 root root 87 Mar 4 15:29 wq.sh