几个常用命令
- ls(list) 查看当前目录下的内容
- pwd(print work direcotry) 查看当前所在目录
- cd[目录名] (change directory) 切换目录
- touch[文件名] (touch) 如果文件不存在,新建文件
- mkdir[目录名] (make directory) 创建目录
- rm[文件名] (remove) 删除指定文件(不能删除目录)
注意: 在执行Linux命令时,提示信息如果显示为乱码这是由于编码问题导致,只需修改Linux编码即可,命令如下
echo 'LANG="en_US.UTF-8"' >> /etc/profile
source /etc/profile
常用技巧:
- Tab键自动补全
- 连续两次Tab键,给出操作提示
- 使用上下箭头快速调出曾经使用过的命令
- 使用clear命令或者ctrl+l快捷键实现清屏
Linux命令格式:
command[-option][parameter]
- command:命令名
- [-option]:选项,可以来对命令进行控制,也可以省略
- [parameter]:传给命令的参数可以是零个,一个或者多个
注意:
[]代表可选 命令、选项、参数之间都有空格分隔
文件目录操作命令
ls
作用:显示指定目录下的内容
语法:ls[-al][dir]
说明:
- -a显示所有文件及目录(.开头的隐藏文件也会列出)
- -l除文件名称外,同时将文件型态(d表示目录,-表示文件)、权限、拥有者、文件大小等信息详细列出
注意:
由于我们使用ls命令时经常需要加入-l选项,所以Linux为ls -l命令提供了一种简写方式即 ll
举例:ls -a -l; ls -al; ls -al ;ls -al /etc
cd
作用:用于切换当前工作目录,即进入目录
语法:cd[dirName] cd /usr/local
特殊说明:
- ~表示home目录 cd ~
- .表示目前所在的目录
- ..表示目前目录位置的上级目录 cd..
cat
作用:用于显示文件内容
语法:cat[-n]filename
说明 -n:由1开始对所有输出的行数编号
举例:cat /etc/profile 参看etc下的profile的文件内容
more
作用:以分页的形式显示文件内容
语法:more filename
操作说明:
回车键:向下滚动一行
空格键:向下滚动一屏
b: 返回上一屏
q或者ctrl+c: 退出more
举例:more /etc/profile 以分页方式显示/etc下的profile文件内容
tail
作用:查看文件末尾的内容
语法:tail[-f]fileName
说明:
- -f:动态读取文件末尾内容并显示,通常用于日志文件的内容输出
举例:
tail /etc/profile 显示/etc目录下的profile文件的末尾10行数据
tail -20 /etc/profile 显示/etc目录下的profile文件末尾的20行数据
tail -f /abc/a.log 动态读取/abc目录下的a.log文件末尾内容并显示
mkdir
作用:创建目录
语法:mkdir[-p] dirName
说明:
- -p:确保目录名称存在,不存在就创建一个。通过此选项可实现多层目录创建
举例: - mkdir abc 在当前目录下创建一个abc的子目录
- mkdir -p abc/test 在工作目录下的abc目录中建立一个名为test的子目录,弱国abc不存在则创建一个
rmdir
作用:删除空目录
语法:rmdir [-p]dirName
说明:
- -p:当子目录被删除后使父目录为空的话,则一并删除
举例: - rmdir abc 删除名为abc的空目录
- rmdir -p abc/test 删除名为abc中的test的子目录,若test目录删除后abc为空则一并删除
- rmdir abc*删除名称以abc开始的空目录
rm
作用:删除文件或者目录
语法:rm [-rf] name
说明:
- -r:将目录及目录中所有文件(目录)逐一删除,及递归删除
- -f:无需确认,直接删除
举例:
- rm -r abc/ 删除名为abc的目录和目录中的所有文件,删除前需要确认
- rm -rf abc/ 无需确认,直接删除名为abc的目录和目录中的所有文件
- rm -f hello.txt 无需确认,直接删除hello.txt文件
拷贝移动命令
cp
作用:用于复制文件或目录
语法:cp [-r] source dest
说明:
- -r:如果复制的是目录需要使用此选项,此时将复制该目录下所有的子目录和文件
举例:
- cp hello.txt abc/ 将hello.txt文件复制到本目录下的abc目录中
- cp hello.txt ./hi.txt 将hello.txt 复制到当前目录,并改名为hi.txt
- cp -r abc/ ./def/ 将abc目录和目录下的所有文件复制到def目录下
- cp -r abc/* ./def/ 将abc目录下的所有文件复制到def目录下
mv
作用:为文件或目录改名、或将文件和目录移动到其他位置
语法:mv source dest
举例:
- mv hello.txt hi.txt 将hello.txt改名为hi.txt 如果存在会提示是否覆盖
- mv hi.txt abc/ 将文件hi.txt移动到abc目录下
- mv hi.txt abc/hello.txt 将文件hi.txt移动到abc目录中,并改名为hello.txt
- mv abc/ def/ 如果def目录不存在,将abc目录改名为def
- mv abc/ def/ 如果def目录存在,将abc目录移动到def目录中
打包压缩命令
tar
作用:对文件进行打包、解包、压缩、解压
语法:tar [-zcxvf] filename [files]
包文件后缀为.tar表示只是完成了打包,并没有压缩
包文件后缀为.tar.gz表示打包的同时还进行了压缩
说明:
- -z:z表示的是gzip,通过gzip命令处理文件,gzip可以对文件进行压缩或者进行解压
- -c:c表示的是create,即创建新的包文件
- -x:x表示的是extract,即从包中还原文件
- -v:v表示verbose,显示命令的执行过程
- -f:f表示file,用于指定包文件的名称
举例:
tar -cvf test.tar test 将test打包为test.tar
tar -zcvf test.tar.gz test 将test大包的同时又压缩为test.tar.gz
tar -xvf test.tar 将test.tar进行解压
tar -zxvf test.tar.gz 将test.tar.gz进行解压
打包:
- tar -cvf hello.tar ./* 将当前文件下所有文件打包,打包后名为hello.tar
- tar -zcvf hello.tar.gz ./* 将按当前目录下的所有文件打包并压缩,打包后的文件名为hello.tar.gz
解包:
- tar -xvf hello.tar 将hello.tar文件进行解包,并将解包后的文件放在当前目录下
- tar -zxvf hello.tar.gz 将hello.tar.gz文件进行解压,并将解压后的文件放在当前目录下
- tar -zxcf hello.tar.gz -C /usr/local 将hello。tar.gz进行解压,并将解压后的文件放在/user/local目录
文件编辑命令
vi/vm
作用:vi命令是Linux系统提供的一个文本编辑工具,可以对文件内容进行编辑,类似于Windows中的记事本
语法:vi fileName
说明:
- vim是从vi发展来的一个功能更加强大的文本编辑工具,在编辑文件时可以对文本内容进行着色,方便我们对文件进行编辑处理,所以实际工作中vim更加常用
- 使用vim命令,需要我们自己进行安装。可以使用yum install vim 进行安装 vim更为常用
- 在使用vim命令编辑文件时,如果指定文件存在则直接打开此文件,如果指定文件不存在则新建文件
- vim在进行文本编辑时分为三种模式,分别是命令模式(Command mode),插入模式(insert mode)和低行模式(Last line mode)。这三种模式之间可以互相切换。我们在使用vim时一定要注意我们所处的时那种模式
- 命令模式:
- 命令模式下可查看文本的内容,移动光标(上下左右箭头、gg(移动到文件开头,连按两次g),G(移动到文件的末尾))
- 通过vim命令打开文件后,默认进入命令模式
- 另外两种模式需要打开命令模式之后才能进入彼此
- 插入模式:
- 插入模式下可以对文件内容进行编辑
- 在命令模式下按下[i,a,o]任意一个,可进入插入模式。进入插入模式后,下方会出现insert字样
- 在插入模式下按下ESC键,回到命令模式
- 低行模式
- 低行模式下可以通过命令对文件内容进行查找,显示行号,退出等操作
- 在命令模式下按下[:,/]任意一个,可以进入低行模式
- 通过/进入低行模式后,可以对文件进行查找
- 通过:进入低行模式后,可以输入wq(保存并退出)、q!(不保存退出)、set nu(显示行号)
- 命令模式:
查找命令
find
作用:在指定目录下查找
语法:find dirName -option fileName
举例:
- find . -name "*.java" 在当前目录下查找.java 的文件
- find /abc -name "*.java" 在/abc目录及其子目录下查找.java结尾的文件
grep
作用:从指定文件中查找指定文本内容
语法:grep word fileName
举例:
- grep Hello HelloWorld.java 查找HelloWorld文件中出现Hello字符串的位置
- grep hello *.java 查找当前目录中所有.java结尾的文件中包含hello字符串的位置