Linux系统管理技术
常用Shell命令
-
文件系统管理
ls:list,打印文件信息列表,常用参数:-a显示所有文件(包括隐藏文件),-l显示文件的详细属性信息,-h以可读性更高的形式显示文件信息
mkdir:make directory,创建文件夹
rmdir:remove directory,删除空文件夹
rm:remove,删除文件(如果要删除文件夹,要带上-rf参数)
cp:copy,拷贝文件(如果要拷贝文件夹,要带上-r参数)
mv:move,移动文件,可以用于文件重命名
rename:文件重命名
touch:将文件的最近修改时间更新为当前时间,如果该文件不存在,则会自动创建一个新的空文件
注释
1、ls命令
功能:显示文件和目录的信息
ls 以默认方式显示当前目录文件列表
ls -a 显示所有文件包括隐藏文件
ls -l 显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行
ls -lh 显示文件的大小,以容易理解的格式印出文件大小 (例如 1K 234M2G)
ls -lt 显示文件,按照修改时间排序
2、cd命令
功能:改名目录
cd dir 切换到当前目录下的dir目录
cd / 切换到根目录
cd … 切换到到上一级目录
cd …/… 切换到上二级目录
cd ~ 切换到用户目录,比如是root用户,则切换到/root下
3、cp命令
功能:copy文件
cp source target 将文件source复制为target
cp /root /source. 将/root下的文件source复制到当前目录
cp –av soure_dir target_dir 将整个目录复制,两目录完全一样
4、rm命令
功能:删除文件或目录
rm file 删除某一个文件
rm -f file 删除时候不进行提示。可以于r参数配合使用
rm -rf dir 删除当前目录下叫dir的整个目录
5、mv命令
功能:将文件移动走,或者改名,在uinx下面没有改名的命令,如果想改名,可以使用该命令
mv source target 将文件source更名为target
6、diff
功能:比较文件内容
diff dir1 dir2 比较目录1与目录2的文件列表是否相同,但不比较文件的实际内容,不同则列出
diff file1 file2 比较文件1与文件2的内容是否相同,如果是文本格式的文件,则将不相同的内容显示,如果是二进制代码则只表示两个文件是不同的
comm file1 file2 比较文件,显示两个文件不相同的内容
7、ln命令
功能:建立链接。windows的快捷方式就是根据链接的原理来做的
ln source_path target_path 硬连接
ln -s source_path target_path 软连接
批量创建文件夹
文件名分别从dir_1 ——dir_10
mkdir dir_{1…10}
批量创建文件
文件名分别从document_1.txt ——document_10._txt
touch document_{1:10}.txt
批量删除文件夹
rm -rf dir_{1…10}
批量删除文件
rm document_{1…10}.txt
vi/vim:Linux世界中最知名的文本编辑器(CUI界面),vim是vi的增强版,比vi更强大,也更容易使用。今天我们只需熟练掌握vi/vim的基本用法,更多的用法细节我们在后面的学习过程中慢慢掌握。vi/vim编辑器有三种工作模式:命令模式、插入模式和末行模式,务必掌握它们之间的切换方法!
nano:Linux系统上的一个非常轻量级并且简单易用的文本编辑器(CUI界面)
truncate:裁剪文件,即将一个文件设置为指定的大小(通过参数-s指定)
重定向符:>和>>,将一个命令的执行输出结果导向一个文件中,如果目标文件不存在,会自动创建一个新文件,如果目标文件已经存在,>会将该文件原来的内容直接清空,而>>不会清空文件原来内容,只是在文件末尾追加新内容
chown:change ownership,修改文件的所有者和所属组群
-
软件包管理
- 在线安装:在Debian/Ubuntu系统上,使用apt-get或apt命令,而在RedHat/CentOS/Fedora系统上要使用yum命令,建议将软件源配置为国内的服务器,加快下载速度
扩展知识
-
文件(File):就是一份数据,用文件名来标识它,文件名可以随意修改,并不会改变它的数据
-
文件夹(Directory):也成为目录,就是文件的集合,方便管理文件,解决文件命名冲突问题(不同文件夹下的文件名可以相同)
-
Linux系统中的隐藏文件是那些文件名以点号(.)开头的文件,这里说的文件包括普通文件和文件夹
-
文件路径(File Path)用来描述该文件的存放位置,知道一个文件的路径就可以访问它,路径有两种写法:
- 绝对路径(Absolute Path):基于根目录进行定位,比如/home/dj/abc/笨小孩.mp3,D:\dj\abc\dnf.exe等
- 相对路径(Relative Path):基于当前目录进行定位,比如./abc/lol.txt, …/def/abc.mp3, ./…/…/./abc/def/…/hello
-
每个文件夹中都存在两个特殊的文件夹,即.和…,它们是隐藏的,.表示当前文件夹,…表示当前文件夹的上层文件夹,主要用来表示相对路径
-
软件的用户界面(UI)有两种:图形化用户界面(GUI)和字符化用户界面(CUI)
UI:User Interface
GUI:Graphical User Interface
CUI:Character User Interface
-
ls -l执行结果解读:
第1个字符表示文件类型,常见的情况:d表示为文件夹,-表示为普通文件,l表示软链接
从第2个字符到第10个字符(共9个字符)表示文件的访问权限,把它们均分为3组来看,第1组表示文件的所有者对该文件具有的访问权限,第2组表示文件所属组群的所有用户对该文件具有的访问权限,第3组表示其他人对该文件具有的访问权限,每一组权限最多为rwx(r:read,可读;w:write,可写;x:excute,可执行),如果没有相应的权限,就用-表示
作业
- 用vim和nano分别写一个自我介绍;
- 将今天学习的所有命令至少练习5遍。