三大操作系统
- Unix(安全、稳定、高效)
代表:AIX(IBM)、Solaris(SUN)、IOS(Apple)、Mac OS X(Apple) - Windows
代表:Win95、Win98、Win2000、Win xp、win7、Win8、Win10 - Linux
安卓(Android)、基于Linux开发Ubuntu(开源、免费)、Redhat
计算机的组成
硬件
- 处理器(CPU)
- 运行内存RAM(存储数据) 容量(字节为单位) 断电会丢掉数据
- 主板(核心)总线设备
- 输入输出设备(显示屏,键盘,鼠标,触摸屏)
- 外部存储设备(硬盘,U盘,TF卡)容量大 断电不会丢掉数据
软件
操作系统(操作系统也是一种软件)
- Windows
- Linux
- Unix
- uCOSII
- ......
应用软件
- 微信
- 游戏
- office
- ......
Linux基本结构
- 应用程序
- 标准库
- Linux操作系统内核
- 硬件
Linux命令的使用
命令名 [选项] [参数] 注:[]的内容代表可选
Linux下的路径
路径:
- 用来记录一个文件或文件夹的字符串
绝对路径:
- 以
'/'字符开头的路径为绝对路径 - 任何时候,绝对路径都是唯一的
相对路径:
- 文件/文件夹名称
-
.当前文件夹 -
..上一级文件夹 -
~用户主目录
Linux常用命令
-
clear 清屏 快捷键:Ctrl+L
-
pwd 显示当前的的工作路径
-
pwd -P如果目录是链接时,显示出实际路径,而非使用链接路径
-
-
ls 显示文件/文件夹
-
ls -l列表显示文件夹的信息 -
ls -a显示全部文件/文件夹(包含隐藏文件) -
ls -la列表显示全部文件/文件夹及其信息 -
ls -A列出所有的文件,但不包括表示当前目录.和上级目录..这两个文件 -
ls -c以时间排序,但不显示时间 -
ls -clt显示列表并且以ctime(文件状态最后改变时间)排序 -
ls -cl显示ctime并且以文件名排序 -
ls -d仅列出目录本身,而不是列出目录里的内容列表 -
ls /home列出/home目录里的内容 -
ls -f直接列出结果,而不进行排序(ls默认会以文件名排序) -
ls --color[=WHEN]是否根据文件类型显示颜色,WHEN可以为never、always或者auto -
ls --full-time以完整的实际模式显示(包含年月日时分) -
ls -g列表显示结果,和-l类似,但是不显示文件所属者 -
ls -h将文件内容大小以GB、KB等易读的方式显示 -
ls -li结合-l参数,列出每个文件的inode -
ls -I列出长数据串,显示出文件的属性与权限等数据信息 -
ls -n显示的所属用户和组不是名称而是对应的id -
ls -r将排序结果以倒序方式显示 -
ls -S以文件大小排序 -
ls -t以修改时间排序
-
-
cd 切换目录
-
cd /home/myhome进入myhome目录 -
cd进入用户主目录 -
cd ~进入用户主目录 -
cd /进入到根目录 -
cd ..返回到上级目录 -
cd -切换到进入这个文件夹之前的文件夹
-
-
mkdir 创建一个或多个文件夹
-
mkdir d1 d2创建d1,d2两个文件夹 -
mkdir -m=r a创建一个名为a的只读文件 -
mkdir -m=w a创建一个名为a的只写文件 -
mkdir -m=rw a创建一个名为a的可读可写文件 -
mkdir -p a/bb/ccc/dddd如果是中间的文件夹不存在,则逐级创建所有文件夹
-
-
rmdir 删除一个或多个文件夹(文件夹内必须为空)
-
rmdir a删除名为a的目录 -
rmdir -p a/bb/ccc/dddd如果是中间文件家为空,则逐级删除中间文件夹
-
-
tree 显示目录树
-
tree显示当前文件夹下的目录树 -
tree a显示a文件夹的目录树
-
-
touch 创建文件
-
touch a创建一个名为a的文件,若a已经存在,则更新a文件的修改时间 -
touch -a a只更改a文件的存取时间 -
touch -c a如果a不存在,则不创建文件。如果a存在,就会更新时间 -
touch -r a把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同 -
touch -t a使用指定的日期时间,而非现在的时间
-
-
rm 删除文件或者文件夹
-
rm a删除a文件,若文件a不存在,则给出提示 -
rm -f a强制删除a文件,忽略不存在的文件,不给出任何提示 -
rm -i a删除a文件,删除前给出提示(y代表yes,n代表no) -
rm -r a递归删除a文件夹内的文件和文件夹 -
rm -R a递归删除a文件夹内的文件和文件夹 -
rm -v a详细显示删除a时进行的步骤 -
rm *.txt删除以.txt结尾的所有文件
-
-
help 查看此命令的帮助信息
-
ls -help查看ls命令对应的帮助信息
-
-
man 查看命令所对应的帮助文档
-
man ls查看ls命令对应的帮助文档
-
-
cat 将文件内容作为标准输出打印到终端
-
cat file一次性显示整个file文件的内容 -
cat > file从键盘创建一个file文件,只能创建新文件,不能编辑已有文件 -
cat file1 > file2从file1读内容,并把内容写入到file2中 -
cat file1 file2 > file将几个文件合并为一个文件,这里将fil1,file2合并为file -
cat -n file由 1 开始对file文件所有输出内容的行数编号 -
cat -n file1 > file2把file1 的文件内容加上行号后输入file2 这个文件里 -
cat -b file和cat -n file相似,只不过对于空白行不编号 -
cat -s file当遇到有连续两行以上的空白行,就代换为一行的空白行
-
-
more 一页一页的形式显示文件内容,方便使用者逐页阅读
-
常用参数
-
more +n file从第n行开始显示文件内容 -
more +5 file从第5行开始显示文件内容 -
more -n file定义一次显示的行数 -
more -5 file定义一次显示5行 -
more -p file先清除屏幕后再显示内容 -
more -c file先显示内容再清除其他旧资料 -
more -f file计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上) -
more -s file当遇到有连续两行以上的空白行,就代换为一行的空白行 -
more -u file显示下引号
-
-
常用操作命令
-
Enter向下n行,需要定义,默认为1行。 -
Ctrl+F向下滚动一屏 -
空格键向下滚动一屏 -
Ctrl+B返回上一屏 -
=输出当前行的行号 -
:f输出文件名和当前行的行号 -
V调用vi编辑器 -
!命令 调用Shell,并执行命令 -
q退出more
-
-
常用参数
-
mv 移动文件或者将文件改名
格式:mv [选项] 源文件或目录 目标文件或目录
命令功能:
mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。在跨文件系统移动文件时,mv先拷贝,再将原有文件删除,而链至该文件的链接也将丢失。-
mv -b file1 file2如果目标文件file2已经存在,文件被覆盖前做简单备份 -
mv -f file1 file2如果目标文件file2已经存在,不会询问而直接覆盖 -
mv -i file1 file2如果目标文件file2已经存在,会询问是否覆盖 -
mv -u file1 file2只在源文件文(file1)件比目标文件(file2)新,或目标文件(file2)不存在时才进行移动 -
mv file1 /home/file2将文件file1移动到home下的file2 -
mv -t /home/file1 file2 file3 ...指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后
-
-
find 在一个目录(及子目录)中搜索文件
-
常用格式:
find [path...] [expression]-
path:find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录 -
expression:expression可以分为——“-options [-print -exec -ok ...]”-
-options,指定find命令的常用选项 -
-print,find命令将匹配的文件输出到标准输出 -
-exec,find命令对匹配的文件执行该参数所给出的shell命令 -
-ok,和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
-
-
-
常用选项
-
-name按照文件名查找文件-
find /test -name a在/test目录及其子目录下面查找名字为a的文件 -
find . -name *.c在当前目录及其子目录中查找任何扩展名为“c”的文件
-
-
-perm按照文件权限来查找文件-
find . -perm 755 –print在当前目录下查找文件权限位为755的文件,即文件属主可以读、写、执行,其它用户可以读、执行的文件
-
-
-prune使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略-
find /apps -path "/apps/bin" -prune -o –print在/apps目录下查找文件,但不希望在/apps/bin目录下查找 -
find /usr/test -path "/usr/sam/temp" -prune -o –print在/usr/test目录下查找不在temp子目录之内的所有文件
-
-
-user按照文件属主来查找文件-
find ~ -user imings –print在$home目录中查找文件属主为imings的文件
-
-
-group按照文件属主来查找文件-
find /text -group aaa –print在/text目录下查找属于aaa用户组的文件
-
-
-mtime -n +n按照文件的更改时间来查找文件,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前-
find / -mtime -5 –print在系统根目录下查找更改时间在5日以内的文件 -
find / -mtime +5 –print在系统根目录下查找更改时间在5日以前的文件
-
-
-type查找某一类型的文件-
b- 块设备文件 -
d- 目录 -
c- 字符设备文件 -
p- 管道文件 -
l- 符号链接文件 -
f- 普通文件 -
find /etc -type d –print在/etc目录下查找所有的目录 -
find . ! -type d –print在当前目录下查找除目录以外的所有类型的文件
-
-
-size n查找文件长度为n块的文件,带有c时表示文件长度以字节计-
find . -size +1000000c –print在当前目录下查找文件长度大于1 M字节的文件 -
find /home/test -size 100c –print在/home/test目录下查找文件长度恰好为100字节的文件 -
find . -size +100 –print在当前目录下查找长度超过100块的文件(一块等于512字节)
-
-
-depth查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找-
find / -name "text.c" -depth –print首先匹配当前目录所有的文件然后再进入子目录中查找
-
-
-
常用格式:
-
grep
grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来
格式:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]
详情可参考 grep命令的使用 和 linux grep命令 -
chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符,只有系统管理者(root)才有这样的权限
格式:chown [-cfhvR] [--help] [--version] user[:group] file...
参数:-
user: 新的文件拥有者的使用者 ID -
group: 新的文件拥有者的使用者组(group) -
-c: 显示更改的部分的信息 -
-f: 忽略错误信息 -
-h:修复符号链接 -
-v: 显示详细的处理信息 -
-R: 处理指定目录以及其子目录下的所有文件 -
--help: 显示辅助说明 -
--version: 显示版本
-
-
压缩与解压
-
gzip命令用来压缩文件 格式:gzip [options] [file-list] -
gunzip命令用来解压文件 格式:gunzip [options] [file-list]
参数说明:file-list为要压缩或解压缩的一个或者多个文件的路径名列表。如果在file-list中存在目录但无选项-r,则gzip/gunzip会报告错误消息并忽略该目录,使用-r选项,gzip/gunzip会递归地压缩/解压缩目录层次结构中的文件-
-c将压缩或解压缩的结果写到标准输出,而不是写到文件 -
-d解压缩用gzip压缩的文件。该选项用于gzip,与gunzip等价,即gzip -d = gunzip -
-f压缩/解压缩时强制覆盖已存在的文件 -
-l对于在file-list中要压缩的每个文件,显示压缩和解压缩后文件的大小、压缩比和压缩前的文件名
-v可获得其他信息 -
-n在压缩速度和压缩量间进行权衡。n为从1~9的数字。第1级为最快压缩,但压缩量最小;第9级的压缩速度最慢,但压缩量最大。默认级别为6,--fast和--best分别等价于-1和-9 -
-q禁止显示警告信息 -
-r递归压缩/解压缩file-list中的文件 -
-t验证压缩文件的完整性。如果文件完整则不显示任何信息 -
-v显示文件名、压缩后的文件名和每个被处理文件的压缩量
-
-
-
tar 对文件或文件夹进行打包和解包的操作,以
.tar后缀代表tar包,用xxx.tar.gz或.tgz代表gzip压缩过的tar文件,用.tar.bz2代表bzip2压缩过的tar文件。-
-c创建包 -
-x解包 -
-v显示操作的文件细节 -
-z用gzip/gunzip对包进行压缩和解压缩 -
-f文件名 正在操作的文件名 -
-C路径 改变解压缩的路径(只对解包有效)
解压方法总结
-
*.tar用tar –xvf解压 -
*.gz用gzip -d或者gunzip解压 -
*.tar.gz和*.tgz用tar –xzf解压 -
*.bz2用bzip2 -d或者用bunzip2解压 -
*.tar.bz2用tar –xjf解压 -
*.Z用uncompress解压 -
*.tar.Z用tar –xZf解压 -
*.rar用unrar x解压 -
*.zip用unzip解压
-
chmod 修改文件权限
格式: chmod 权限 文件名/文件夹名
-
u用户 -
g同组用户 -
o其他用户 -
a所有用户 -
+添加权限 -
-删除权限 -
r用4代表,读权限 -
w用2代表,写权限 -
x用1代表,执行权限
输出重定向
-
标准输出重定向
-
>将一个命令的标准输出重定向到指定文件 -
>>将一个命令的标准输出重定向到指定文件
-
-
标准错误输出重定向
-
2>将一个命令的标准"错误"输出重定向到指定文件 -
2>>将一个命令的标准"错误"输出重定向"追加"到指定文件
-
-
重定向所有输出
&>&>>
操作带有特殊符号的路径的方法
- 用两个双引号
""把路径括起来mkdir "a b"rmdir "a b"












网友评论