********************系统命令*******************
1. 查看ip: ifconfig
2. 重启系统: reboot
3. 关机: shutdown -h now
4. 查看当前操作系统位数: getconf LONG_BIT
********************文件命令*******************
1. 查看当前文件夹: pwd
2. 切换目录:cd
切换上一级: cd ../
3. 显示当前文件下的所有文件及文件夹: ls
ls -l :显示文件详细信息
ls -a:显示隐藏文件,以.开头的
4. linux文件目录结构,只有一个根目录 /
bin:系统命令
dev
home:存放普通用户相关信息的
lib64
media
mnt
opt
root:存放root用户相关信息的文件夹
selinux
sys
usr:本地程序数据的目录,相当于windows的Program Files (x86)文件夹
boot
etc:放系统配置文件
lib
lost+found
misc
net
proc
sbin
srv
tmp
var
5. 创建新文件命令: touch 文件名
列: touch test
6. 创建文件夹: mkdir 文件夹名
列: mkdir app
7. 复制文件/文件夹到哪里的命令: cp
cp test /home ----复制文件
cp app -a /home -----复制文件夹 要加一个 -a 表示 将文件夹里的所有文件都复制下来
8. 移动文件/文件夹到哪里的命令 :mv
mv test /usr
mv app /usr
9. 重命名文件或文件夹: mv 要重命名的文件/文件夹 新名字
mv test test1
10. 删除文件和目录: rm
rm -rf app 删除app文件
rm -rf * 删除当前目录下所有文件
rm -rf t* 删除所有以t开头的文件和文件夹
11. 显示文件内容,带分页: more 文件名
more chg.text
空格: 下一页
crtl+pgup: 上一页 -------pgup 这个键在电源键的左边第三个
12. 显示文件内容,带分页: less 文件名
less chg.text
空格 下一页
q 退出当前命令
13. 在文本中查询内容: grep
grep "关键词" xxx.txt
grep -n "关键词" xxx.txt 显示行数
14. 搜索文件及目录:find
find / -name chg.txt 从根目录下开始查找名称为chg.txt的文件
15. 编辑文本命令: vim
(1) vim /test
(2) 进入插入模式 输入 i 回车
(3) 按esc建 退出插入模式,回到命令模式
(4) 输入:wq 回车 保存并退出
输入:q! 回车 退出但是不保存.
16.查看文件命令: cat
17. 解压缩文件命令: tar -zxvf 文件名
********************用户命令*******************
linux系统中,用户不能单独存在,用户一定属于某个用户组
用户组的添加和用户的添加必须用root用户,普通用户没有权限
1.查看linux所有组信息: cat /etc/group
2. 创建用户组: groupadd 组名
3. 创建用户,并指定用户所属组: useradd -g 组名 用户名
4. 查看linux系统中所有用户信息
cat /etc/passwd
paul:用户名
x:加密密码
500:用户id
500:用户组id
paul:用户组,创建用户时若不指定用户组,默认的用户组就和用户名一样
/home/paul:用户主目录
/bin/bash:用户所使用的,解析命令的工具
5. 修改用户密码: passwd 用户名,如果不加用户名,是给当前用户设置密码
6. 删除用户
userdel 用户名
userdel -r 用户名 删除用户以及相关目录
userdel -f 用户名:
强制删除已经登录用户,不会断开该用户已有的 SSH 链接。
因此,即使用户已经不存在,但实际上仍是登录状态,并且是活跃用户。但是当用户登出后不可再登录,因为用户已经被删除。
7. 改变用户所在组 usermod -g 组名 用户名
8. 改变用户登录的初始目录 usermod -d 目录名 用户名
9. 查看当前登录用户 who am i
10. 切换用户 su root/su paul
********************文件权限*******************
linux中每个文件都有权限,linux相比windows是比windows安全的
权限是linux系统优于windows系统最出色的部分
linux系统中,每个文件,文件夹都有三种操作权限,读,写,执行.
同时,每个文件和文件夹都有三个角色对应,文件创建者(拥有者)的权限,同组用户的权限,其他用户的权限
每个权限都有一个代码:
权限 代码 权限值
读 r 4
写 w 2
执行 x 1
最常用的文件权限是755:
7:文件拥有者的权限是7,文件拥有者对文件的权限有读写和执行
5:同组用户的权限是5,同组用户对文件的权限有读和执行
5:其他用户的权限是5,其他用户对文件的权限有读和执行
一个文件的详细内容: drwxr-xr-x 5 root root 4096 Jul 4 11:35 home
d:表示目录(-代表文件,l代表连接)
rwx:文件拥有者的权限,读写和执行
r-x:同组人员的权限,读和执行
r-x:其他组用户的权限,读和执行
root:拥有者
root:所在组
4096:大小
Jul 2 19:43:最后修改时间
bin:文件名称
创建两个用户组
groupadd teacher
groupadd student
分别给两个用户组添加用户
useradd -g teacher bian
useradd -g teacher zhao
修改文件权限命令 chmod
chmod 755 abc 赋予文件abc权限755
chmod u=rwx,g=rx,o=rx abc
chmod u-x,g+w abc 给abc去除拥有者执行权,添加同组人员写权限
chmod a+r abc 给所有用户添加读的权限
chown xiaoming abc 改变abc的拥有者为xiaoming
chgrp root abc 改变abc的所属组为root
********************任务调度crontab*******************
linux中一般用crontab给系统设置定时任务
1. date:获取系统时间
date > /home/time.log 获取当前系统时间写入到 /home/time.log
date >> /home/time.log
>是覆盖写 >>是追加写
修改系统时间 date -s "2012-05-18 04:53:00"
2. 使用date命令修改系统时间后马上重启电脑,操作系统还没有将系统时间同步到CMOS(cpu芯片),
开机后就还是没有修改前的时间了,所以为了保险起见,最还还是手动使用命令 clock 将系统时间同步到CMOS中。
将当前时间和日期写入BIOS,避免重启后失效 : hwclock -w
3. 显示当前系统时间: date Tue Jul 4 20:44:13 -08 2017
格式化输出时间: date "+%Y-%m-%d %H:%M:%S" 2017-07-04 20:45:03
4. 设置任务: crontab -e
每隔一段时间执行 date "+%Y-%m-%d %H:%M:%S" >> /home/time.log
每天2点执行 0 2 * * * date "+%Y-%m-%d %H:%M:%S" >> /home/time.log
时间表达式:
*:分钟
*:小时
*:日历(1~31)
*:月历(1~12)
*:星期(0~6)
5. 多任务执行,把所有任务,写入到一个可执行文件,shell编程
(1) 编辑一个shell文件,vim mytask.sh
(2) 编辑任务内容
date >> /home/time.log
cp /home/test.log /root
(3) 用chmod修改mytask.sh的文件权限,增加可执行权限
(4) 修改任务 crontab -e,修改为:* * * * * /root/mytask.sh
补充:任务的编辑
crontab -e 编辑任务
crontab -l 查看用户所有任务
crontab -r 删除所有定时任务
********************进程与网络*******************
进程:正在执行的程序,进程有独立的地址空间
线程:轻量级的进程,线程没有独立的内存空间,线程不能独立存在,线程由进程创建
linux上,每个进程都可能以两种方式存在,前台和后台,每个进程都会对应一个父进程
1. 查看进程全部状态 ps -aux(静态查看)
终止某个进程 kill 进程号
强制终止某个进程 kill -9 进程号
2. 动态查看进程信息 top
12:17:55:当前系统时间
up 1:08:系统启动时间
2 users:当前有多少用户登录linux系统
load average: 0.00, 0.00, 0.00 当前系统负载能力,三个的平均值大于0.6,系统已经很紧张了
Tasks: 104 total, 1 running, 103 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3%us, 0.0%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 760200k total, 269468k used, 490732k free, 8724k buffers
Swap(虚拟内存): 2047992k total,0k used,2047992k free, 103736k cached
终止指定的进程 top回车,k回车,进程号
指定系统进程更新时间为10s: top -d 10,系统每10s刷新一次
3.显示网络服务及进程号:
netstat -anp
kill -9 进程号
4. 查看当前登录用户
w回车
强行剔除某个用户:pkill -kill -t 用户TTY