Linux基础知识
时间:2021-08-27
学习Linux系统的重要性应该不用多说,下面我就对Linux的基础知识进行一个全面而又简单的总结。不过建议大家还是装个Linux系统多练习,平时最好只在Linux环境下编程,这样会大有提高。
linux的特点
- 免费的/开源
- 支持多线程/多用户
- 安全性好
- 对内存和文件管理优越
关机命令
shutdown -h now(立即进行关机) shutdown -r now (现在重新启动计算机) reboot (现在重新启动计算机)
进入桌面
startx
用户登录
登录时尽量少用root账户登录,因为它是系统管理员,最大的权限,难免操作失误。可以利用普通用户登录,登录后再用“su -”命令来切换成系统管理员身份
用户注销
在提示符下输入logout即可
linux的文件系统是采用层级式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录,深刻理解linux文件目录是非常重要的
- /
- root,存放root用户的相关文件
- home,存放普通用户的相关文件
- bin,存放常用命令的目录,如vi,su
- sbin,要具有一定权限才可以使用命令
- mnt,默认挂载光驱和软驱的目录
- etc,存放配置的相关文件
- var,存放经常变化的文件,如网络连接的sock文件
- boot,存放引导系统启动的相关文件
- usr,安装一个软件的默认目录,相当于windows下的program files
下面就来介绍一些比较常用的命令及使用方法:
pwd,显示当前在哪个路径下
linux的用户管理
useradd 用户名,添加用户
【案例】useradd xiaoming
passwd 用户名,为新用户设密码
【案例】passwd xiaoming,修改小明的密码
userdel 用户名,删除用户
【案例】userdel xiaoming,删除用户但保存用户主目录
【案例】userdel ‐ xiaoming,删除用户以及用户主目录
logout,当前用户推出
who am i,当前用户是谁
cd,改变目录
ls,列出文件和目录
ls ‐a,显示目录下的所有文件,包括隐藏文件
ls ‐l,显示长列表格式
mkdir,建立目录
rmdir,删除空目录
touch,建立空文件
cp,复制命令
【案例】cp ‐r dir1 dir2,递归复制命令(复制子目录信息)
mv,移动文件和改文件名
rm,删除文件和目录
rm ‐rf *,删除所有内容,包含目录和文件,r表示递归,f表示强制
ln,建立符号连接,类似于建立某个文件的快捷方式
ln ‐s 源目标
【案例】ln ‐s /etc/inittab inittab,inittab指向实际文件/etc/inittab inittab
more,显示文件内容带分页,ctrl + page up上翻,长空格下翻
less,显示文件内容带分页
grep,在文本中查询内容
【案例】假设存在某个文件test.cpp中含有hello关键字,此时可以使用grep名命令来查找,grep n “hello” test.cpp,n表示在第n行出现
|,管道命令,在linux和unix系统,把上一个命令的结果交给|后面的命令处理
【案例】ls ‐l /etc/ | more
man [command],帮助,类似于dos中的help
find,搜索文件及目录。在linux中,因为文件系统是以级别式的结构来组成的,所以要在整个系统中找到特定的文件和目录并不是件容易的事。而“find”命令可以解决上述问题
在特定的目录下搜索并显示指定名称的文件和目录
【案例】find / -name man:意思是说从根目录开始搜索名称为man的文件或目录
搜索一段时间内被存取/变更的文件或目录
【案例】find /home -amin -10:十分钟内存取的文件或目录
【案例】find /home -atime -10:十小时内存取的文件或目录
【案例】find /home -cmin -10:十分钟内更改过的文件或目录
【案例】find /home -ctime +10:十小时前更改过的文件或目录
搜索指定大小的文件
【案例】find /home -size +10k:意思是说查找/home目录下大小为10k的文件
重定向命令
ls -l > a.txt,列表的内容写入文件a.txt中(覆盖写)
ls -al >> aa.txt,列表的内容追加到文件aa.txt的末尾
从文件中输入信息:database_program < database_data
en,查看环境变量
压缩和解压
以zip和unzip处理.zip文件
zip命令的基本使用方法
zip file.zip *:zip后接压缩后的文件名,在它的后面输入要压缩的文件即可
压缩后,自动删除原文件
【案例】zip m file.zip to.txt:把to.txt文件压缩成file.zip文件,to.txt会自动删除的
将子目录一起压缩
【案例】zip ‐r file.zip *:将当前目录下的子目录一起压缩
忽略子目录的内容
【案例】zip ‐j file.zip *
将已压缩的或没有必要压缩的文件去掉
【案例】zip ‐n .mpg: .jpg: .gif:第一种文件中间要用“:”分开
压缩某一日之后的文件
【案例】zip ‐t 080915 file.zip:将当前目录下在2015年8月9日之后文件压缩
不压缩链接文件的原文件
【案例】zip ‐y file.zip *
压缩率问题,-1~-9,其中-9的压缩率最高
【案例】zip -9 file.zip *
将不需要压缩的文件排除在外
【案例】zip file.zip * -x file2.txt:在压缩时,将当前目录内的file2.txt文件排除在外
以unzip命令进行.zip文件的解压缩
直接解压缩文件
【案例】unzip file.zip
排除不需要解压缩的文件
【案例】unzip file.zip ‐x file2:除了file2文件外,其他的文件都解压缩
查看压缩包的内容
【案例】unzip ‐Z file.zip:查看file.zip压缩包的内容,也可以使用“-l” “-v”来查看压缩包的内容
以gzip和gunzip处理.gz文件
在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念 。
1)所有者:一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者。用ls ‐ahl命令可以看到文件的所有者。也可以使用chown 用户名 文件名来修改文件的所有者。
2)文件所在组:当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组,用ls ‐ahl命令可以看到文件的所有组,也可以使用chgrp 组名 文件名来修改文件所在的组。
3)其它组:除开文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组。
文件权限
ls -l中显示的内容如下:
-rwxrw-r‐-1 root root 1213 Aug 9 09:39 abc
10个字符确定不同用户能对文件干什么
第一个字符代表文件(-)、目录(d),链接(l)
其余字符每3个一组(rwx),读(r)、写(w)、执行(x)
第一组rwx:文件所有者的权限是读、写和执行
第二组rw-:与文件所有者同一组的用户的权限是读、写但不能执行
第三组r--:不与文件所有者同组的其他用户的权限是读不能写和执行
也可用数字表示为:r=4,w=2,x=1 因此rwx=4+2+1=7
1 表示连接的文件数
root 表示用户
第二个root表示用户所在的组
1213 表示文件大小(字节)
Aug 9 09:39 表示最后修改日期
abc 表示文件名
改变权限的命令
chmod 改变文件或目录的权限
chmod 755 abc:赋予abc权限rwxr-xr-x
chmod u=rwx,g=rx,o=rx abc:同上u=用户权限,g=组权限,o=不同组其他用户权限
chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限
chmod a+r abc:给所有用户添加读的权限
改变所有者(chown)和用户组(chgrp)命令
chown xiaoming abc:改变abc的所有者为xiaoming
chgrp root abc:改变abc所属的组为root
chown root ./abc:改变abc这个目录的所有者是root
chown ‐R root ./abc:改变abc这个目录及其下面所有的文件和目录的所有者是root
改变用户所在组<