linux shell 命令
什么是Shell?
Shell 是连接操作系统内核 与 用户 的接口。
终端是shell的表现形式。
Linux的内核版本号由三部分组成:主版本号.次版本号.修正号。次版本号有其他含义:奇数为测试版,偶数为稳定版。
常见的linux发行版有 Fedora、Ubuntu等。
什么是Shell编程?
Shell 脚本语言加上linux 命令语句就构成了shell程序。优点在于批量处理、不用用户每次手动输入。
bash是shell程序解释器的一种。
常用命令
Shell命定的通用格式:命令 选项 参数,command option arguments.
man :man后接命令的名称,则可查看该命令的使用帮助。要翻阅说明书页,可使用 page up或page down。
命令名 --help 简要帮助
whatis:查询命令的含义。如whatis chmod的结果:
cc@cc-virtual-machine:~$ whatis chmod
chmod (1) - change file mode bits
chmod (2) - change permissions of a file
pwd:print working directory,打印工作目录。
cd:chang directory,改变工作目录。可使用绝对命令或相对命令。 .. 代表父目录。
ls:list,查看目录内容。 -l 可查看详细信息。
clear:清屏。
echo:显示屏上显示指定字符串。
上下箭头:历史命令。
Tab:命令自动补全。当前输入可唯一定位命令时,tab一次就可以补齐。若有多个匹配项,可以按两次tab。
通配符有‘*’:匹配任意数目的任意字符;‘?’:匹配单个任意字符;‘[。。。]’限定字符范围。
at:定时执行任务。 示例:at now + 5 minutes 五分后显示系统时间。
硬盘与分区
Linux硬盘分区有三种:主分区(Primary Partition)、扩展分区(Extended Partition)和逻辑分区(Logical Partition)。一个硬盘最多只能有4个主分区。若想拥有多个分区,需要创建扩展分区,然后在扩展分区划分出逻辑分区。
Linux既可以装在主分区上,也能装载在逻辑分区上。
Linux通过字母和数字的组合来标示硬盘分区。Hd是指IDE硬盘,a表示第一块硬盘,主分区与扩展分区用1~4的数字标识,逻辑分区从5开始编号。
例一:/dev/hda3 第一个IDE硬盘上的第三个主分区或扩展分区;
例二:/dev/hdb6第二个IDE硬盘上的第2个逻辑分区。
mount:挂载文件系统。此命令需要root用户权限。
umount:移除文件系统。
文件操作
zip可在windows系统下兼容。
tar:备份文件和目录为一个文件,方便存取。
ln –s软连接类似于Windows下的快捷方式,删除原文件后,链接文件随之失效。
touch :新建文件。
mkdir : 新建目录。
cp :复制文件和目录。
mv :移动文件和目录。
rm :删除文件和目录。
查看系统状态
shutdown: 正常关机。
reboot:重启。
ps:查看程序执行情况。
-e 显示所有进程,环境变量
-f 全格式
进程状态:状态分为运行R、休眠S、僵尸Z。
top:查看进程运行状态,并且实时更新,包括CPU利用率、内存利用率等。
kill:终止进程。
date:更改、查看日期。
cal:显示日历或年历(cal 1992)。
free:显示内存使用情况。
nice:以某种优先级启动一个进程。
who:show who is logged on
w:Show who is logged on and what they are doing.
系统目录简介
/boot 系统启动时的引导文件。
/dev 即device,当前连接到系统上的设备。NULL表示不存在的设备,常用于重定向输出,隐藏掉不需要的输出信息。
/etc 存放系统的配置信息。新建用户的名称、id、所在组等信息记录在 etc/passwd文件中。密码存在etc/shadow中。
/home 存放用户数据的目录。
/mnt 挂载其他文件系统,如光驱等。
/root 超级用户主目录。
/tmp 临时文件。
/var 即variable,变量。存放日志文件和服务器数据。
/usr 存放应用程序。是占用硬盘空间最大的目录。
常见文件扩展名:
.conf 配置文件
.gz/.gzip gzip压缩文件
.rpm Rpm包管理器文件
.tar 备份文件
查询与定位
locate:定位文件或目录。
grep: 用来查找含特定内容的文件。若找到,会显示查找目标的相应列。常与重定向连用。类似于cmd的 findstr。
RPM软件包管理
rpm -q 【选项】【软件包或文件名称】 查询软件包。主要选项有-p<file> 查询软件包的文件;-f <file> 查询<file>属于哪个软件包;-a 查询所有安装的软件包。
rpm -i 安装软件包
rpm -u 升级软件包
rpm -e 卸载软件
作业控制
逻辑上相关的多个进程称为一个作业。
linux中,使用cron、at、和batch等工具对作业进行控制。