赞
踩
bin:存放二进制可执行文件
boot:存放开机启动程序
dev:存放设备文件:字符设备、块设备
home:存放普通用户
etc:用户信息和系统配置文件 passwd、group
lib:库文件:libc.so.6
root:管理员宿主目录(家目录)
usr:用户资源管理目录 unix software resourse
普通文件:-
目录文件:d --(diretory file)
字符设备文件:c --(character)
块设备文件:b --(block)
软连接:l --(link)
管道文件:p --(pipe)
套接字:s --(socket)
未知文件。
真正的文件和伪文件:
------------------------(待查阅)
示例:
在显示器上显示一段文字,一般起到一个提示的作用;此外,也可以直接在文件中写入要写的内容。
-n:表示输出之后不换行
-e:表示对于转义字符按对应的方式进行处理
(如不加-e,那么在输出时转义字符会按照普通字符进行处理,不会输出正确的结果。)
示例:
格式:echo [-选项] " 要输出的内容"
转义字符
定义:用一些普通字符的组合来代替一些特殊字符,由于其组合改变了原来字符所表示的含义,因此称为转义字符。
echo输出时的转义字符:
转义字符 | 含义 |
\b | 删除前面的空格 |
\n | 换行 |
\t | 水平制表符 |
\v | 垂直制表符 |
\c | \c后面的字符将不会输出,同一时候,输出完毕后也不会换行 |
\r | 回车符 |
\a | 输出一个警告的声音 |
示例:
echo "想要的内容" > 文件名
将想要的内容覆盖到对应的文件当中去,文件当中之前的内容不复存在了,实际上是修改了源文件的内容。
echo "想要的内容" >> 文件名
将想要的内容追加到文件后,对文件之前的内容不修改,只进行增添,也叫追加重定向。
示例:
echo $SHELL 查看当前使用的shell
(cat /etc/shells 查看当前可使用的shell)
示例:
cd - 返回上一个目录
cd .. 返回上一级目录
cd ~ 返回用户目录
cd + 路径名 切换到指定目录下
列出当前文件夹下的目录项
示例:
竖排显示目录项和详细信息,ls-l的缩写
示例:
显示dirname中目录的详细信息
示例:
显示diename本身的详细信息
示例:
递归查看目录
示例:
递归显示详细信息
示例:
文件权限说明
目录项详细信息:
文件权限、硬链接计数、所有者、所属组、大小、时间、文件名/文件夹名
文件权限
drwxr-xr-x --> d rwx r-x r-x
d:代表文件类型,是目录文件
r:读权限(4)
w:写权限(2)
x:执行权限(1)
-:无权限(0)
从左到右:rwx、r-x、r-x (也可以用数字表示为:0755 ,其中0表示八进制)
分别代表所有者读写执行权限、同组用户读写执行权限、其他人读写执行权限
查看instruct命令所在目录位置
示例:
(1)mkdir dirname 新建目录
(2)rmdir dirname 删除空目录,非空目录删不掉
(3)touch filename 创建名为filename的空文件
(4)rm filename 删除文件
(5)rm -r dirname 递归删除目录
(6)rm -rf dirname 强制删除
(7)mv file1 file2 location 将文件1和文件2移动到目标位置
(8)cp filename dirname 复制文件到目录
(9)cp filename1 filename2 复制文件1并重命名为文件2
下面-a 和 -r 的区别在于,-a 是完全复制,文件权限、改动时间等都完全相同
(10)cp -a dirname1 dirname2 复制目录1及其下所有文件到目录2
(11)cp -r dirname1 dirname2 递归复制目录1到目录2
(1)cat filename 查看文件内容
(2)tac filename 逆转查看文件内容
(3)more filename
(4)less filename
cat 读取终端,就是回显
more filename :与 cat类似,但是对于大文件查看很有优势,
空格翻页,回车一行,
用q或者Ctrl+c退出。
less filename:也和cat类似
空格翻页,回车一行,
用q或者Ctrl+c退出
(5)head -n filename 查看文件前n行,不加 -n 参数默认查看10行
(6)tail -n filename 查看文件后n行,不加 -n 参数默认查看10行,
顺序显示的,不是倒序显示,1-10查看后四行是78910
(7)tree命令,查看当前目录结构树,需要安装tree
软链接就像Windows下的快捷方式
Linux下的软链接行为和windows下的快捷方式差不多,但是如果用相对路径创建的软链接,在软链接移动之后就会失效,无法访问。这一点和Windows快捷方式不同,Windows快捷方式随便怎么移动都行。
软链接中存放的实际是链接文件的路径名。创建软链接最好使用绝对路径。
软链接的权限指的是这个软链接本身的权限,不是软链接指向文件的权限
如下图,只存放相对路径的file1.s移动后失效
如下图,存放绝对路径的file1.soft 移动后未失效
创建硬链接后,文件的硬链接数+1
对于file1,有2个硬链接file1.h和file1.hard,无论更改哪个硬链接或者文件本身,这三个文件的变化同步。
产生这种同步变化的原因是:文件和硬链接的Inode是相同的,每个文件都有唯一的Inode,直观理解起来就像引用,对于同一文件,无论有多少引用,在访问时,都是这个文件,所以修改就是同步的。
当删除一个硬链接时,文件的硬链接计数-1,当这个计数减为0时,才会删除这个文件。
(1)whoami
查看当前用户
示例:
第一种:文字设定法
chmod [who] [ + | - | = ] [mode] filename
操作对象who可以试下述字母中的任意一个或者他们的组合
u 表示"用户(user)",即文件或目录的所有者
g 表示"同组(group)用户",即文件所有者有相同组ID的所有用户
o 表示"其他(others)用户"
a 表示"所有(all)用户",他是默认值
操作符号可以是:
+ 添加某个权限
- 取消某个权限
= 赋予给定权限并取消其他所有权限(如果有的话)
示例:(给file1文件添加执行权限)
第二种:数字设定法
chmod 操作码 filename 直接用操作码修改权限
对于file1的权限
-rw-rw-r--
421421421
三个组的权限都用二进制编号,比如要设置当前用户对文件的读写和执行权限,则当前用户的操作权限为4(读)+ 2(写)+ 1(执行)= 7
用户组和其他用户的权限设置也是一样的
对于file1的权限 -rw-rw-r--
我们设置如下:
所有者 rwx = 7
所有者所在组 rw=6
q其他用户 r=4
操作码就是 764
(3)添加新用户
sudo adduser newusername
(4)修改文件所有者
chown username filename
(5)切换用户
su username //切换当前用户为username
(6)添加新的用户组
sudo addgroup groupname
(7)修改文件所属用户组
sudo chgrp groupname filename
(8)同时修改文件所属用户和用户组
sudo chown username:groupname filename
(9)删除用户
sudo deluser username
(10)删除用户组
sudo delgroup groupname
find命令:找文件
-type 按文件类型搜索 d/p/s/c/b/l/ f:文件
find ./ -type 文件类型
-name 按文件名搜索
find ./ -name "*file*.jpg"
-maxdepth 指定搜索深度。应作为第一个参数出现。
find ./ -maxdepth 1 -name "*file*,jpg"
-size 按文件大小搜索,单位:k、M、G
(注意:两个size一个都不能少,还有就是文件大小单位对大小写敏感)
find /home/jx -size +20M -size -50M
-atime、mtime、ctime 天 amin、mmin、cmin 分钟
按照时间搜索
a 表示最近访问时间
m 表示最近更改时间,指更改文件属性一类
c 表示最近改动时间,指更改文件内容
-exec:将find搜索的结果集执行某一指令
find /usr/ -name '*tmp*' -exec ls -ld {} \;
-ok:以交互的方式将find搜索的结果集执行某一指定命令
find /usr/ -name '*tmp*' -ok ls -ld {} \;
(1)grep命令:找文件内容
-n参数:显示行号
grep -r 'copy' ./ -n
(2)ps命令
监控后台进程工作情况,默认值显示当前可以和用户交互的进程
ps aux | grep 'supsd' -- 检索进程结果集
(3)find … | xargs ls -l 对find操作的结果集进行操作
等价于
find … -exec ls -l {} \;
-xargs:将find搜索的结果集执行某一指定命令。当结果集数量过大时,可以分片映射。
find /usr/ -name '*tmp*' | xargs ls -ld
两者差别在于当结果集合很大的时候,xargs会对结果进行分段处理,所以性能会好些,但xargs也有缺陷,xargs默认用空格来分割结果集,当文件名有空格的时候,会因为文件名被切割失效
xargs缺陷演示
创建名字带空格的文件
方法一:文件名加引号(可能版本原因,带有引号)
方法二:转义字符
xargs缺陷演示
解决xargs的缺陷问题,指定切分符号位null
-print0:
find -maxdepth 1 -type f -print0 | xargs -print0 ls -l
第一个print0指定结果集分隔符为null,第二个print0指定xargs分隔为null。
安装软件
sudo apt-get install softname
更新软件列表
sudo apt-get update
更换软件源:
系统设置->软件和更新->下载自……
换软件源过后要更新软件列表
卸载软件
sudo spt-get remove softname
两者都是配合tar打包命令使用
这两个压缩的缺陷都是只能对单个文件进行压缩,一来不能压目录,二来不能打包
(1)第一种压缩方式:gzip
tar zcvf 要生成的压缩包名 压缩材料(这里的压缩包名一般以.tar.gz结尾)
上述命令实际执行了两步,
一个是gzip进行压缩:gzip filename (解压:gunzip zipfile)
另一个是打包命令:tar file… tarname
所以tar zcvf 是两条指令的结合版本
对zcvf进行解释:
z:zip,压缩
c:create,创建
v:vision,显示压缩过程,可以去掉,直接用zcf,但这样不显示压缩过程
f:file,文件
file filename 查看文件来源
(2)第二种压缩方式:使用bzip2方式压缩
tar jcvf 要生成的压缩包名 压缩材料
解压:
将压缩命令中的c --> x
tar zxvf 压缩材料 使用gzip解压
tar jxvf 压缩材料 使用bzip2解压
(1)rar压缩
需要安装rar
sudo apt-get install rar
打包,把dir压缩成 newdir.rar,如果压缩材料里没有目录,-r参数可以省去
rar a -r newdir.rar dir
解压rar文件
unrar x newdir.rar
查看软件安装信息
sudo aptitude show softname
(2)zip压缩
zip压缩
zip -r dir.zip dir
zip解压
unzip dir.zip
zip文件在Windows和Linux下通用
(1)who 查看当前在线上的用户情况
(2)whoami 查看当前用户,不带有进程
(3)ps aux | grep 条件 结果至少有一个,就是当前查询进程
(4)jobs 查看操作系统当前运行了哪些用户作业
(5)kill 杀死进程
(6)env 环境变量
(7)top 文字版任务管理器
(8)sudo passwd username 设置用户密码
(9)sudo su 切换root用户
(10)ifconfig 查看网卡信息
(11)man 系统参考手册
man n name 在系统手册第n章查看name
(若有些函数搜不到相应参考手册,则需安装对应的manpage)
例如:
- 安装c语言库函数基本帮助文档:
- sudo apt-get install manpages
- sudo apt-get install manpage-dev
- ……
- 安装POSIX函数帮助文档
- sudo apt-get install manpages-posix
- sudo apt-get install manpages-posix-dev
(12)alias 给命令起别名
alias 别名 = ‘指令’
主键盘快捷键:
上 Ctrl+p
下 Ctrl+n
左 Ctrl+b
右 Ctrl+f
Del Ctrl+d delete 删除光标后面的
First Ctrl+a 光标跳到行首
End Ctrl+e 光标跳到行尾
Backspace Backspace 删除光标前面的单个字符
清除整行 Ctrl+u
删除光标到行末 Ctrl+k
显示上滚 Shift+PgUp
显示下滚 Shirt+PgDn
增大终端字体 Ctrl + Shirft + +
减小终端字体 Ctrl - -
新打开一个终端 Ctrl+Alt+T
清屏 Ctrl+l 直接用clear也行
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。