linux:用户 -- shell – 内核 (由外至里) 文件系统贯穿其中,存储、管理。 一、shell的常用方式:
定义:在用户和内核之间,起到编译器、解释器的作用。 sh:最初的shell,每种linux都有
bash:sh的扩展,如命令的补齐,命令历史的查询等。 csh:适合c开发
tcsh:csh的扩展,如命令的补齐,命令历史的查询等。 ksh:集合了csh、bsh的优点,比bsh有更多的参数。 pdksh:ksh的扩展,增加了命令,如挂起、唤醒等。
二、文件系统: home:主目录
bin:存放系统常用命令 sbin:存放系统的管理程序 etc:存放系统管理的各种配置 dev:映射文件 lib:各种动态链接库 mnt:挂载磁盘
usr:用户的应用程序和库文件 selinux:安全模块
srv:服务启动后要提取的数据 proc:虚拟目录,系统内存的映射 sys:系统状态的映射文件 var:日志文件 boot:启动文件
lost+found:修复文件(系统崩溃) root:根目录
三、linux的基本概念:
1.文件:文件名一般由数字、字母、下划线、英文句点组成。 (若文件名是以.开头,一般是隐藏文件。)
2.目录:具有目录属性的文件。(/ 的. .. 都是自己) 3.分区:基本分区,扩展分区(划分为若干的逻辑分区) 例如:hda1
hd:IDE 硬盘、光盘 (或 sd:SCSI u盘、移动硬盘) a:盘号(硬盘个数,a为1块) 1:分区,主分区1-4,逻辑5开始 例如:(win)c主盘,d、e、f逻辑 f装linux hda1/5/6/7 hda7 f=80G,内存1G SWAP 2000MB
ext3/4 / XXX
特殊分区:交换空间SWAP(将硬盘上一块区域划分为虚拟内存)4.挂载:把硬盘分区挂载到某个目录下(/mnt) 5.用户系统:root,超级用户 权限:RWX 421 ( +rwx == +7)
四、linux命令:
1.who {查看当前用户}
2.pwd {查看当前路径(绝对路径:绝对路径:从根目录开始)} 3.clear {清屏}
4.ls {当前目录的列出文件和目录}
ls –a {列出所有,包括隐藏(.当前目录和..父目录)} ls –l {列出所有的目录和文件的详细状态(ll,是LL小写)} ll -h {自动单位文件的大小} ls -t {按时间排序目录或者文件} ls –s {显示字节大小} ll –i {查看节点号} 5.cd {更改工作目录} cd . {当前目录} cd .. {父目录(上一级)} cd / {根目录} cd ~ {主目录}
(注意:主目录的区别,$即普通用户下的主目录 或 #即超级用户下的主目录,看登录的谁就是谁的主目录)
6.touch 文件名 {[1]创建文件 [2]修改已有文件的时间戳} touch -d 文件名 {修改时间戳}
touch -c 文件名 {若该文件不存在,则不进行创建} 7.mkdir 目录名 {创建目录}
mkdir -p 目录名 {递归建立目录及其子目录} 8.rm 文件名 {删除文件}
rm -rf 文件名或目录名 {强制递归删除目录及其子目录} 9.rmdir 目录名 {删除空目录}
10.mv 源文件或目录 目标文件或目录 {[1]移动[2]覆盖[3]重命名}
mv -b源文件或目录 目标文件或目录 {备份被覆盖的文件} (注意: .开头的文件为隐藏文件 ~结尾的文件为备份文件) 11.cp 源文件或目录 目标文件或目录 [1]复制 [2]覆盖
cp -i 源文件 目标文件 {若目的地有重复的文件,则询问是否覆盖}
cp -r 源文件或目录 目标文件或目录 {递归复制、覆盖} 12.clear {清屏} 13.cal {打印当月日历}
cal 年份 {指定年的日历} 14.date {打印当前时间} 15.cat 文件名 {打印文本内容}
cat -n 文件名 {显示行号}
cat -b 文件名 {跳过空白行的行号}
cat 文件名 | more {查看文件内容,并分屏显示} (注意: 回车,翻行 空格,翻屏。
| 为管道符,将两个命令隔开,左边的输出作为右边的输入, 即在管道之前的命令输出的大量结果,由管道之后的条件进行过滤。)
cat 文件1 文件2 > 文件3 {合并追加} (注意:文件1内容在上,文件2为追加其尾)
1
16.head 文件名 {查看前(默认10行)的文本内容} head -行数 文件名 {指定前N行}
17.tail 文件名 {查看尾(默认10行)的文本内容} tail –行数 文件名 {指定尾N行} 18.> {输出重定向(覆盖)} 19.>> {输出追加重定向(追加) 举例: head -2 /etc/passwd >> txt
20.grep ‘字符串’文件名 {利用正则表达式搜索文本,并把匹配的结果打印出来}
(注意: 正则表达式为用来描述或匹配一系列符合某个句法规则的字符串的单个字符串。即利用元字符或者搜索关键字的字符串)
grep -i‘字符串’文件名 {忽略大小写} grep -n ‘字符串’文件名 {显示改行并打印行号} grep -c ‘字符串’文件名 {匹配行的个数}
grep -v ‘字符串’文件名 {反向检索,只打印不匹配的} 21.diff 文件名1 文件名2 {比较两个文本的内容} 22.useradd 用户名 {创建用户} 23.passwd 用户名 {设置密码}
24.usermod –l 新用户名 旧用户名 {修改用户名} 25.userdel 用户名 {删除用户,但其主目录残留} (注意:此时可以用rm –rf 对其残留的主目录进行删除) userdel -r 用户名 {彻底删除用户,包括其主目录} 26.su 用户名 {登录指定用户}
27.chmod 0777 文件名 {更改当前文件或目录的权限}
chmod -R 0777 文件名 {当目录和其子目录及文件都做相同权限变更}
(注意:第一个0为八进制符,后面的7为r=4、w=2、x=1, 此命令也可以写为如chmod u+x 文件名,u处可为u=拥有者、g=同组人、o=其他人、a=所有人)
28.umask {屏蔽权限命令(系统初始0022)} umask 八进制数字权限 (注意:若为0022,则目录初始rwx r-x r-x,
文件初始为rw- r-- r--,文件为当前屏蔽权限后再去掉x,以保证系统安全)
(注意:全部权限被屏蔽,之后建立的文件或者目录以新生效的umask为标准,但之前的不会改变)
29. ln 源文件 目标文件 {硬链接,注意只能文件}
ln -s 源文件或目录 目标文件或目录 (软链接) (注意:区别为删除源硬链接文件,但目标硬链接文件依然指向该节点。删除源软链接文件,目标软链接文件失效。)
(注意:硬链接可以视为c++下的引用,软链接可以视为某种程度上的window下的快捷方式) 30.history {查看命令历史}
31.man 命令名 {利用man手册查看命令详解及参数}
五、调整终端大小
ctrl -:变小 ctrl 0:标准 (注:数字0) ctrl shift +:放大
六、元字符(通配符) * 0-N个字符 ? 1个字符
七、ls –l下的信息详解
drwxr-xr-x 2 root root 4096 06-07 08:28 d1 -rw-r--r-- 1 root root 0 06-07 08:28 f1 第一字段:文件类型,文件权限 d:目录 (mkdir) -:普通文件 (touch) l:(链接)符号文件
b:块设备文件:如磁盘,固定大小的空间存储信息(有缓冲区) c:字符设备文件:如键盘,一次输入一个字符 p:管道文件 s:socket文件
rwx r-x r-x:拥有者u、所属组g、其他人o (r读、w写、x执行、-空缺) 第二字段: 文件:硬链接个数
目录:(没有硬链接)目录的个数(初始包含. ..) 有子目录+1,则个数+1 包含文件,不+
第三字段:拥有者u、所属组g 第四字段:
文件:字节(新文件是0) 目录:页面大小(初始4096,4k) 第五字段:日期、时间 第六字段:文件名
八、常用vi命令(三种模式): esc进入<指令模式>--------------- dd删除一行(配合p,形成剪切效果)、 yy复制一行、p粘贴
数字dd 例如:按5,再按dd 删除5行 数字yy 例如:按5,再按yy 复制5行 u 撤销
x 删除单个字符 r 替换单个字符
esc进入<文本输入模式>------------ i插入、a追加、o换行(不区分大小写) esc进入<末行模式>---------------- :wq {保存退出} :q! {不保存退出} :set nu / set nonu {行号的开启/关闭} ================================== (注意:vi编译器==》vim增强版 旧vi光标移动:h左,j下,k上,l右 旧vi退格键失效,则使用x或r进行修改)
2
因篇幅问题不能全部显示,请点此查看更多更全内容