1.Linux的基本思想
一切皆文件
小型,单一用途的程序
链接程序,共同完成复杂的任务
避免令人困惑的用户界面
配置数据存储在文本中
2. Linux文件目录和分区
文件目录:
/:根目录
/root:管理员的家目录
/home:存放username普通用户家的相关文件
/bin:存放普通用户的可执行命令;OS启动时会用到的程序
/sbin:存放有一定权限才可以使用的命令,即管理类的基本命令
/mnt:默认挂载光驱(iso)的挂载点
/etc:存放系统配置相关的文件
/var:存放经常变化的文件
/usr:存放系统的应用程序,比如apt-get install xxx安装的软件
/tmp:存放临时文件、日志文件
/dev:存放硬盘设备信息
/boot:存放Linux操作系统启动时的引导文件
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
/lib64:专用于x86_64系统上的辅助共享库文件存放位置 /mnt:临时文件系统挂载点
/opt:第三方应用程序的安装位置
/srv:系统上运行的服务用到的数据
3. Linux下文件类型区别和权限
权限说明:r:可读,用4表示;w:可写,用2表示;x:可执行,用1表示
-:普通文件 ------ ------ 黑色 d: 目录文件 ------ ------ 蓝色 b: 块设备 ------ ------ 红色 c: 字符设备 ------ ------ 绿色 l: 符号链接文件 ------ ------ 浅蓝色 p: 管道文件 ------ ------ 黑底黄字 s: 套接字文件 ------ ------ 紫色
4.路径区别
绝对路径 以正斜杠开始 完整的文件的位置路径 可用于任何想指定一个文件名的时候
相对路径名 不以斜线开始 指定相对于当前工作目录或某目录的位置 可以作为一个简短的形式指定一个文件名
5.基本命令操作(新手上路,多多包涵)
Tab:双击,命令补全
sudo su:进入root用户
apt-get install package:安装程序
apt-get remove --purge softname:卸载并清除配置
shutdown –h now:立刻关机
reboot;shutdown–r now:重启
exit:退出
clear:清空
pwd:显示当前目录
cd:改变目录
ls:列出文件和目录
ls -a:显示隐藏文件
ls -l:显示长列表格式
ll:显示文件详细内容
mkdir:建立目录
rmdir:删除空目录
touch:建立空文件
cp:复制
cp-r 文件夹 目标目录:拷贝文件夹
mv:移动文件和重命名
rm:删除文件和目录
rm-rf:递归、强制删除目录和内容,fr:recursive force
ln:链接,指向源文件
ln-s 源文件 目标文件:目标指向源文件
more:分页显示文件内容,下一页:空格 上一页:Shift + PageUp
less:分页显示文件内容
grep:在文本中查询内容
grep–n“xxx” Hello.java,其中-n显示行数
|:管道命令
在Linux系统中,| 就是管道,把上一个命令的结果交给 | 后面的命令处理,比如:
ls/etc/ | more:列出etc目录内容,分页显示
find/ -name .html | grep bookmark:在根目录,按照文件名.html查找,再在文件中查找bookmark
find:搜索文件(夹)
1)在特定的目录下搜索并显示指定名称的文件(夹)
find/ -name huhau。txt:从根目录,按照文件名查找huhau.txt
2)搜索一段时间内被存取、变更的文件(夹)
findhome/ -amin -10:10分钟内存取的文件或目录
findhome/ -atime -10:10小时内存取的文件或目录
findhome/ -cmin -10:10分钟内更改过的文件或目录
findhome/ -ctime +10:10小时前更改过的文件或目录
3)搜索指定大小的文件
findhome/ -size +10k:查找home下,大小为10k的文件
:管道定向命令,比如:
grep“main”-nam Hello.java > 1.bak:结果输送到1.bak保存起来(覆盖)
grep“main”-nam Hello.java >> 1.bak:结果输送到1.bak保存起来(添加到文件末尾)
chown:改变文件(夹)的所有者
chownDave hello.c
chownDave:Dave hello:改变文件(夹)的属主和属组
chgrp:改变文件(夹)所在组
chgrpDave hello.c
chmod:改变文件(夹)的权限,比如:chmod 777 Hello.java
Linux用户(组)管理命令(只有root用户能添加用户)
useradd用户名:添加用户
useradd[-u uid] [-g group] [-d home] [-s shell]user_name:添加用户
useradd–m 用户名:自动建立用户的登入目录
useradd–d 用户名:指定用户登陆时的起始目录
passwd用户名:给用户设密码
userdel用户名:删除用户
userdel–r 用户名:删除用户和用户相关文件
userdel–r 用户名:删除用户和户主目录
groupadd组名:添加用户组,
useradd-g 组名 用户名:创建用户,并指定组,该命令还能用于改变用户所在组
whoam i:显示用户信息
查看linux中所有用户信息:cat/etc/passwd | more,假如显示如下:
along:x:1001:1001::/home/along:/bin/sh
对应格式:用户名:密码:用户id:组id::用户目录:用户使用的shell解析器
root用户查看用户密码:cat /etc/shadow | more
root用户查看群组信息:cat /etc/group | more
查看linux中所有组的信息:cat /etc/group | more
history:显示历史命令
history10:显示最近使用的10个命令
!5:执行历史编号为5的命令
!ls:执行最后一次以“ls”开头的命令
hostname name:更改主机名称
wc:用于统计文档的行数,字符数或词数。
wc -l:统计行数
wc -m 统计字符数
wc -w 统计词数
若wc后面不跟任何参数,直接跟文档,会把行数,词数和字符数依次输出。
diff:是以逐行的方式,比较文本文件的异同处。
diff -<行数>:指定要显示多少行的文本。此参数必须与-c或-u参数一并使用;
diff -a或——text:diff预设只会逐行比较文本文件;
diff -b或–ignore-space-change:不检查空格字符的不同;
diff -B或–ignore-blank-lines:不检查空白行;
diff -c:显示全部内容,并标出不同之处;
sort:将文件进行排序,并将排序结果标准输出。sort命令既可以从特定的文件,也可以从stdin中 获取输入。
sort -b:忽略每行前面开始出的空格字符;
sort -c:检查文件是否已经按照顺序排序;
sort -d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符;
sort -f:排序时,将小写字母视为大写字母;
sort -n:依照数值的大小排序;
sort -r:以相反的顺序来排序;
cut:显示行中的指定部分,删除文件中指定字段。cut经常用来显示文件的内容
cut -b:仅显示行中指定直接范围的内容;
cut -c:仅显示行中指定范围的字符;
cut -d:指定字段的分隔符,默认的字段分隔符为“TAB”;
cut -f:显示指定字段的内容
cut命令有2个功能:
1.用来显示文件的内容,它依次读取由参数file所指 明的文件,将它们的内容输出到标准输出上
2.是连接两个或多个文件,如cut fl f2 > f3将把文件fl和几的内容合并起来,然后通过输出重定 向符“>”的作用,将它们放入文件f3中
后续追加>>