目录基本操作命令
列目录内容ls
ls [options] [files] #options是可选参数
常用可选参数:-a 所有文件及目录 -A 等同于-a,但是不列出.以及.. -l 长格式显示 -R递归列目录及其子目录
ls -l /tmp #长格式列系统的临时目录
ls -lR /bin #递归列/bin目录及其子目录下所有内容
ls -AF #列当前目录,在目录名后加/,可执行文件名后加*
ll 相当于ls -l
建立子目录(mkdir)
mkdir的功能是创建子目录,一次可以创建一个或多个,还可以一次创建包括全部的父目录和子目录在内的一个完整目录结构
mkdir [-p] [-m MODE] dirs #-p:如果要创建的目录已经存在也不报错,必要时可以同时创建父目录;-m是按照权限MODE创建子目录
mkdir temp #在当前目录下创建temp子目录
mkdir temp2 temp3#创建多个子目录
mkdir -p a/b/c #在a/b下创建c子目录,若a和a/b不存在则一并创建 ,若不使用-p那么a和a/b不存在则c会创建失败
mkdir -m 0700 mydir #以权限0700创建目录mydir
目录删除(rmdir)
rmdir命令的功能是删除空目录
rmdir [-p] dirs #使用-p则若该目录的上层目录没有包含其它文件或目录一并删除
rmdir temp
rmdir -p a/b/c
改变以及显示当前目录(cd、pwd)
pwd #显示当前目录
cd是改变用户的当前工作目录,它的使用受权限制约,要求用户对所要切换到的目录具备执行权
cd 或者cd ~ #切换到用户的家目录
cd /tmp
cd .. #切换到当前目录的上级目录
cd ~- 或 cd - #切换到刚离开的目录
文件的基本操作命令
显示文件内容或合并文件(cat)
cat命令用来把文件内容显示到终端的屏幕上,当不带参数运行cat时使用标准输入。cat可以一次显示多个文件,因此使用此命令可以通过输出重定向的方法将显示的多个文件内容改道到某个文件中从而实现文件的合并
cat [options] [files]
-b 为非空行显示行号(从1开始) -n 为所有行添加行号(从1开始) -E 在行末显示$符
cat /etc/passwd
cat -n a.c #显示a.c中的内容,并为所有行添加行号
cat a.txt b.txt > c.txt #将文件 a.txt和b.txt中的内容合并到c.txt中其中>是覆盖式的输出重定向
cat > myfile #从键盘输入内容并将其保存到文件myfile,Ctrl_D结束
cat -e a.txt #在文件a.txt每行后显示$,以观察尾部空格
文件和目录复制
cp [options] src dst
cp [options] src src2.. dir
第一种是将源文件复制到目标文件,第二种是将一批文件复制到某个目录
cp命令常用的参数
-f 强制方式,若存在则直接覆盖 -i 交互方式,若存在则提示确认 -R/-r 递归复制,按源目录结构复制其内所有内容 -b 启动备份
cp -i f1 f2 #以交互方式把f1的内容复制到f2
cp /tmp/a.txt #将/tmp/a.txt复制到当前目录
cp f1 /tmp/f2 #将文件f1复制到
文件改名或移动(mv)
mv [options] src dst #可选项和cp的相同
mv -f f1 f2 #强制把f1更名为f2,若f2存在则覆盖
mv myf /tmp/tmpf #把文件myf移动至/tmp/tmpf
mv f1 f2 mydir把文件f1和f2移动到mydir
删除文件(rm)
rm [options] file..
-i 交互式的删除 -r/-R 递归,用于删除目录及其内容
-f 强迫式,不提示直接删除 --删除以-开头的文件
rm -i f1
rm -r -f f1 mydir #强制同时删除文件f1和目录mydir
rm -- -xy
rm * \ 删除名字为*和的文件
文件内容信息统计(wc)
wc [options] files
-c 统计字节数 -m统计字符数 -L 统计最长行的字节数 -w统计单词数 -l 统计行数 files是文件名,若不指定则使用标准输入
wc /etc/passwd 综合统计/etc/passwd内容的信息:行/单词/字符数
wc -l /etc/passwd 统计/etc/passwd内有多少行
ls /dev | wc -l #统计设备目录/dev内有多少文件或子目录
wc -w my.txt #统计文件my.txt内有多少单词
文本编辑命令(vi)
i 光标处插入 :w 保存文件,但不退出 :q 不保存退出(若已修改,则使用:q!/ZQ) :q!/ZQ 强行退出(修改后不保存退出)
:wq[!] 保存并退出[强行保存并退出]
vim中显示行号 :set number 关闭行号显示 :set nonumber
进程管理基本命令
pstree(Linux的命令,进程关系树查询)
pstree #显示系统进程树
pstree -p | grep named #查询named的pid 必须添加-p参数,否则不输出pid
pstree user #显示指定用户user的进程
终止进程执行(kill)
kill -l #列出所有信号
kill -9 3239 #9信号表示终止,终止pid为3239的命令
ln创建软连接
参考:https://www.cnblogs.com/zhangna1998517/p/11347364.html
具体用法是:ln -s 源文件 目标文件。
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的 目录下
用ln命令链接(link)它就可以,不必重复的占用磁盘空间。例如:ln -s /bin/less /usr/local/bin/less
-s 是代号(symbolic)的意思。
这里有两点要注意:第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;第二,ln的链接又软链接和硬链接两种,
软链接就是ln -s ** **(注意这里的两个路径都是全路径,否则在使用软连接时会出现Too many levels of symbolic links 问题),它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。
【硬连接】
硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。
【软连接】
另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。