1.目录操作
ls:列举出该路径下的目录
命令 | 解释 |
---|---|
ls -a | 列出当前目录下所有文件,包括以.头的隐含文件(如~/.bashrc) |
ls -l | 列出当前目录下文件的详细信息,包括各个文件夹的权限、最后修改时间、包含的文件数目等。 |
pwd:查看当前所在目录的绝对路径。
cd:改变文件目录。
命令 | 解释 |
---|---|
cd aa | 切换到aa目录下。 |
cd 回车 | 切换到当前用户的根目录下,localhost:~ lee$ |
cd / 回车 | 切换到当前用户的上一级目录。localhost:/ lee$ |
mkdir:创建文件夹。
命令 | 解释 |
---|---|
mkdir abc 123 | 创建两个目录,一个是abc,一个是123 |
mkdir -p a/b/c | 创建多级目录a/b/c |
rmdir:删除空文件夹。
命令 | 解释 |
---|---|
rmdir abc | 删除空目录abc |
rmdir a/b/c | 删除a/b下面的c,a/b依然在,只是把c删除了,注意c必须是空文件夹 |
rm -rf aa | 删除aa,aa可以删除多级目录,可以是文件,可以是空文件夹 |
2.文件操作命令
cp:拷贝文件。
命令 | 解释 |
---|---|
cp a/test.txt test.txt | 把目录a下面的test.txt拷贝到根目录下的test.txt |
cp a/b c | 如果b是一个空文件夹,此命令会失败,因cp命令只能拷贝文件,不能拷贝文件夹。 |
cp -R 源文件 目标地址 | 把源文件以及源文件下面的所有文件夹和文件全部拷贝到目标地址,可以拷贝空文件夹。 |
cp -R a/b e | 假如源目录是a/b/c/d.txt,执行cp -R a/b e后,目录b及其以下文件夹、文件都会拷贝到目录e下面,目标地址变成:e/b/c/d.txt |
rm:删除文件。
命令 | 解释 |
---|---|
rm -rf | 强制删除文件或者目录 |
mv:移动文件/重命名。
命令 | 解释 |
---|---|
mv test.log test1.txt | 将文件test.log重命名test.txt |
mv test1.txt test3 | 将test1.txt文件移到目录test3中 |
mv log1.txt log2.txt log3.txt test3 | 将log1.txt ,log2.txt, log3.txt 三个文件移到 test3目录中去 |
mv -i log1.txt log2.txt | 将文件file1改名为file2,如果file2已经存在,则询问是否覆盖 |
mv -f log3.txt log2.txt | 将文件file1改名为file2,即使file2存在,也是直接覆盖掉。 |
mv dir1 dir2 | 如果目录dir2不存在,将目录dir1改名为dir2;否则,将dir1移动到dir2中。 |
mv * …/ | 移动当前文件夹下的所有文件到上一级目录。 |
mv test3/*.txt test5 | 把当前目录的一个子目录里的文件移动到另一个子目录里。 |
find 路经 -name “字符串” :查找路经所在范围内满足字符串匹配的文件和目录.
命令 | 解释 |
---|---|
find ~ -name “*.txt” -print | 根目录$HOME中查找文件名符合*.txt的文件 |
find . -name “*.txt” -print | 在当前目录及子目录中查找所有的‘ *.txt’文件. |
find . -name “[A-Z]*” -print | 当前目录及子目录中查找文件名以一个大写字母开头的文件. |
find /etc -name “host*” -print | 在/etc目录中查找文件名以host开头的文件. |
find . -perm 755 -print | 在当前目录下查找文件权限位为755的文件,即文件属主可以读、写、执行,其他用户可以读、执行的文件. |
find /apps -path “/apps/bin” -prune -o -print | 希望在/apps目录下查找文件,但不希望在/apps/bin目录下查找. |
3.文本文件查看命令
grep:字符文件名根据字符匹配来查看文件部分内容.
命令 | 解释 |
---|---|
grep root /etc/passwd | 将/etc/passwd目录下,有出现 root 的行取出来。 |
grep -n root /etc/passwd | 将/etc/passwd,有出现 root 的行取出来,同时显示这些行在/etc/passwd的行号。 |
grep -v root /etc/passwd | 将/etc/passwd,将没有出现 root 的行取出来。 |
grep -v root /etc/passwd | grep -v nologin:将/etc/passwd,将没有出现 root 和nologin的行取出来。
cat 文件名 :查看文件内容(全屏查看)
命令 | 解释 |
---|---|
cat f1.txt | 查看f1.txt文件的内容。 |
cat -n f1.txt | 查看f1.txt文件的内容,并且由1开始对所有输出行进行编号。 |
cat -b f1.txt | 查看f1.txt文件的内容,用法与-n相似,只不过对于空白行不编号。 |
cat -s f1.txt | 当遇到有连续两行或两行以上的空白行,就代换为一行的空白行。 |
cat -e f1.txt | 在输出内容的每一行后面加一个$符号。 |
cat f1.txt f2.txt | 同时显示f1.txt和f2.txt文件内容,注意文件名之间以空格分隔,而不是逗号。 |
cat -n f1.txt>f2.txt | 对f1.txt文件中每一行加上行号后然后写入到f2.txt中,会覆盖原来的内容,文件不存在则创建它。 |
cat -n f1.txt>>f2.txt | 对f1.txt文件中每一行加上行号后然后追加到f2.txt中去,不会覆盖原来的内容,文件不存在则创建它。 |
cat /etc/passwd | grep root :将/etc/passwd目录下,有出现 root 的行取出来。
more:more功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。
命令 | 解释 |
---|---|
more -4 test.log | 将test.log设置为每屏显示4行,翻页用空格或Ctrl+F。 |
more +3 test.log | 从第三行开始显示日志内容。 |
more +/liu test.log | 从文件中查找第一个出现"liu"字符串的行,并从该处前两行开始显示输出。 |
cat test.log | more -5:
当一个目录下的文件内容太多,可以用more来分页显示。这得和管道 | 结合起来。
less:less的功能和more相似,但是使用more无法向前翻页,只能向后翻,而less可以任意切换。
head:查看文件,从头开始
命令 | 解释 |
---|---|
head -20 | 查看文件前20行 |
tail:查看文件,从尾开始
命令 | 解释 |
---|---|
tail -20 | 查看文件最后20行 |
4.用户命令:
退出当前用户:exit或Ctrl+D
强制停止:Ctrl+C
切换到root账户:sudo su
5.其他
date :显示日期的命令
cal :显示日历的命令
bc :不错的简单计算器
man :命令 查询命令帮助
which :查看可执行档案的位置
whereis :查看档案的位置
locate :配合数据库查看档案位置
gzip bzip2 compress :压缩,解压命令
vi 文件名: 用VI编辑文件
alias :命令别名设置指令
unalias :释放别名
tar 打包 解包指令
ifconfig 网络配置命令
ping ping目标主机
netstat 显示监听端口及进程
clear 清屏
useradd 加用户
passwd 修改密码
chgrp chown 修改文件的用户组所有者
dd 用来备份的指令
dd if=”input-file” of=”output-file”
sh :脚本文件 执行脚本文件
df -h:查看分区情况及每个分区的使用情况。
du -sh:在某个目录下操作,查看该路径使用量。