linux的系统组成:
1.内核:系统接口调用,内存管理,文件系统管理,硬件驱动
2.shell:系统调用/库文件调用实现一些功能
3.文件系统:磁盘
4.应用程序:软件
系统-分配计算机资源
linux特点:
1.一切皆文件
2.大小写敏感
3.所有的系统管理都通过配置文件来控制
linux工作目录:
- / :根目录
- /bin:存放所有用户都能执行的命令(二进制文件)
- /boot:存放启动文件/内核相关文件,一般独立成为一个分区
- /dev:存放物理设备的目录
- /etc:存放配置文件
- /home:用户的家目录
- /lib:32位库文件
- ldd /bin/ls :查看ls命令要调用哪些库,如果里面任意一个库不能使用,则ls命令无法使用
- /lib64:64位库文件
- /lost+found:分区修复时找回来的文件会存放在这里,存放一些系统不正常关机的文件残片
- /media :专门用于挂载的目录
- /misc:autofs 备用文件夹
- /mnt:专门用于挂载的目录
- /opt:用于存放第三发软件可选目录
- /proc:当前内核的映射,一个虚拟的文件系统
- /root:管理root的家目录
- /sbin:管理员才能执行的命令
- /selinux:selinux安全策略相关的文件
- /sys:内核在内存中的映象文件
- /tmp:临时目录,建议独立划成分区
- /usr:用于存放第三发软件
- /var:存放日志或者频繁修改的文件
- /etc/inin.d:存放系统或服务器以system v 模式启动的脚本
- /etc/xinetd.d: 服务器通过xinetd模式运行的
- /etc/X11:图形窗口有关的
- /usr/bin:系统自带的软件包安装存放的目录
- /usr/sbin:管理员执行的命令
- /usr/local:存放用户自编译安装软件的目录
- /usr/share:系统共用的东西存放地,/usr/share/fonts是字体目录
- /usr/src:内核源码存放的目录
- /var/log:系统日志存放目录
- /var/spool:打印机、邮件、代理服务器等
linux基本命令:
切换目录:
cd:到当前用户的家目录
cd ~:到当前用户的家目录
cd /:到根目录
cd .:当前目录
cd ..:到上级目录
cd -:两个目录之间切换
cd 绝对路径
cd 相对路径查看文件:
ls:查看当前目录包含内容
ls ./:查看当前目录包含内容
ls ../:查看上级目录包含内容
ls -a:查看当前目录包含的所有文件内容
ls -l:详细方式查看当前目录包含内容
ll:详细方式查看当前目录包含内容
ls -al:详细方式查看当前目录包含所有文件内容
ls -ltr:详细方式和反向时间排序查看当前目录内容
ls -R:递归查看目录包含内容
ls -lh:详细方式和kb格式查看当前目录包含内容
tree 路径:查看目录树结构,需要安装tree
安装tree:
sudo yum -y install tree
- 创建/更新文件:
touch 不存在的文件:创建文件
touch 已存在的文件:更新文件的时间
vim 文件名:创建并编辑文件
> 文件名
echo > 文件名
注意:> 是输出重定向,文件已存在的话会覆盖以前的内容, >> 是追加
安装vim:
虚拟机用桥接方式,ifconfig,得到IP,用远程连接调用
sudo yum -y install vim
sequence序列:
seq 100:产生1到100的序列
seq 0 2 100:产生0到100之间的偶数序列
seq 1 2 100 | xargs touch:创建1到100的奇数文件
mkdir `seq 1 2 10` :创建1到10的奇数文件创建/删除目录:
mkdir 单个目录
mkdir -p 多级目录 静默方式
rmdir 单个空目录/多级目录的最后一个目录
rmdir -p 删除多级空目录
rmdir aaa/d* 可用通配符删除匹配上的目录copy
cp 目录1/文件1 目录2:将文件1由目录1复制到目录2下
cp 目录1/文件1 目录2/文件2:复制并修改文件名
cp -a 目录1/文件1:将文件1由目录1复制到目录2下,文件属性不变
cp -r 目录1/文件1 目录2:递归复制
\cp 目录1/文件1 目录2/文件2: 如果有重名的不询问,直接覆盖,静默方式,常用于脚本中移动文件
mv 目录1/文件1 目录2:将文件1由目录1移动到目录2下
mv 目录1/文件1 目录2/文件2:移动并改名
mv 目录1/文件1 目录1/文件2:改名字删除文件
rm 文件1:删除文件1
rm 目录1/:删除目录1下的全部文件及目录1
rm -i 文件1:提示是否删除文件1
rm -rf:强制递归删除
rm -r a*:删除以a首字母的文件,可用通配符删除匹配上的文件判断时文件还是目录:ll -普通文件、d目录、l连接文件、b设备
[vagrant@vagrant-centos65 1]$ touch a
[vagrant@vagrant-centos65 1]$ mkdir c
[vagrant@vagrant-centos65 1]$ ll
total 4
-rw-rw-r-- 1 vagrant vagrant 0 Mar 3 03:20 a
drwxrwxr-x 2 vagrant vagrant 4096 Mar 3 03:20 c
快捷键
ctrl + c:就是发送Terminal到当前的程序,Ctrl+C就会强制结束当前的这个进程
ctrl + d:是发送一个exit信号,终止输入
ctrl + l:清屏 = clear
ctrl + z:是把当前的程序挂起,暂停执行这个程序
jobs:查看后台任务
fg 编号:是把后台运行的任务调入到前台显示
bg 编号:是把一个后台暂停的任务变为可执行
ctrl + k:删除当前光标到后面的所有内容
ctrl + u:删除当前光标到前面的所有内容
ps aux | grep 文件名1:查看文件名1的进程帮助命令
help 内部命令
外部命令 --help
man 命令时间
date:查看时间
cal:查看日历
修改时间:
yum list|grep ntp
sudo yum -y install ntpdate ntp
sudo ntpdate s1b.time.edu.cn 同步时间
tzselect 安装步骤 5 9 1
sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date "+%Y-%m-%d %H:%M:%S" 输出当前时间
ff=date +%F 设ff变量为当前日期
ff=date +%F --date="30 day ago" 设ff变量为当前日期-30
注释:%F=%Y-%m-%d
创建当前日期的文件名:
touch $(date +%F)
touch `date +%F`
- 重启/关机
sudo reboot:重启
sudo shutdown now:立刻关机