1.常见指令
ls 显示文件或目录
-l 列出文件详细信息l(list)
-a 列出当前目录下所有文件及目录,包括隐藏的a(all)
mkdir 创建目录
-p 创建目录,若无父目录,则创建p(parent)
cd 切换目录
touch 创建空文件
echo 创建带有内容的文件。
cat 查看文件内容
cp 拷贝
mv 移动或重命名
rm 删除文件
-r 递归删除,可删除子目录及文件
-f 强制删除
find 在文件系统中搜索某文件
wc 统计文本中行数、字数、字符数
grep 在文本文件中查找某个字符串
[root@www ~]# grep [-acinv] [–color=auto] ‘搜寻字符串’ filename
选项与参数:
-a :将 binary 文件以 text 文件的方式搜寻数据
-c :计算找到 ‘搜寻字符串’ 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行!
–color=auto :可以将找到的关键词部分加上颜色的显示喔!
rmdir 删除空目录
tree 树形结构显示目录,需要安装tree包
pwd 显示当前目录
ln 创建链接文件
-s 软连接
缺省 硬链接
more、less 分页显示文本文件内容
head、tail 显示文件头、尾内容
ctrl+alt+F1 命令行全屏模式
系统管理命令
stat 显示指定文件的详细信息,比ls更详细
who 显示在线登陆用户
whoami 显示当前操作用户
hostname 显示主机名
uname 显示系统信息
top 动态显示当前耗费资源最多进程信息
ps 显示瞬间进程状态 ps -aux
du 查看目录大小 du -h /home带有单位显示目录信息
df 查看磁盘大小 df -h 带有单位显示磁盘信息
ifconfig 查看网络情况
ping 测试网络连通
netstat 显示网络状态信息
man 命令不会用了,找男人 如:man ls
clear 清屏
alias 对命令重命名 如:alias showmeit=”ps -aux” ,另外解除使用unaliax showmeit
kill 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。
打包压缩相关命令
gzip:
bzip2:
tar: 打包压缩
-c 归档文件
-x 压缩文件
-z gzip压缩文件
-j bzip2压缩文件
-v 显示压缩或解压缩过程 v(view)
-f 使用档名
例:
tar -cvf /home/abc.tar /home/abc 只打包,不压缩
tar -zcvf /home/abc.tar.gz /home/abc 打包,并用gzip压缩
tar -jcvf /home/abc.tar.bz2 /home/abc 打包,并用bzip2压缩
当然,如果想解压缩,就直接替换上面的命令 tar -cvf / tar -zcvf / tar -jcvf 中的“c” 换成“x” 就可以了。
关机/重启机器
shutdown
-r 关机重启
-h 关机不重启
now 立刻关机
halt 关机
reboot 重启
2.进入目录需要哪些权限, 在目录中执行增删查(cd, touch, ls, rm, mv等)改文件动作, 需要哪些权限.
(1)进入目录需要可执行x的权限
(2)cd 执行操作需要x权限 (展开此目录下内容)
touch 执行操作需要w,r,x三种权限 (创建一个文件)
ls 执行操作需要r,x两种权限(查看目录下内容)
rm 执行操作需要r,w,x三种权限(rm -rf表示删除文件)
mv 执行操作需要w,x两种权限(将源文件重命名为目标文件,或将源文件移动至指定目录)
3.Linux下的重要目录/proc, /sys, /SElinux, /bin, /usr/lib, /usr/local, /var, /tmp
/proc是linux内核中提供的文件系统,在运行访问内核数据结构,改变内核设置的机制。proc是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时,proc文件系统是动态从系统内核读出所需信息并提交的。
/proc下有三个很重要的目录:net,scsi和sys
/sys目录是可写的,可以通过它来访问或修改内核的参数。一个proc虚拟文件可能有内部格式,如/proc/scsi/scsi,它是可读科可写的,并且读写的格式不一样,代表不同的操作,应用程序中读到这个文件的内容一般还需要进行字符串解析,而在写入时需要先用字符串格式化按指定的格式写入字符串进行操作;相比而言,/sys的设计原则是一个属性文件只做一件事情,/sys属性文件一般只有一个值,直接读取或写入。整个/proc/scsi目录在内核中已被标记为过时,它的功能已经被相应的/sys属性文件所完全取代。新设计的内核机制应该尽量使用/sys机制,而将proc保留给纯净的“进程文件系统”。
/SElinux(Security-Enhanced Linux)由Kernel SElinux模块和用户态工具两部分组成。带给linux的主要价值时:提供了一个灵活的,可配置的MAC机制。SElinux是一个安全体系结构,它通过LSM框架被集成到Linux Kernel2.6.x中。它是NSA和SELinux社区的联合项目。提供了一种灵活的强制访问控制系统,且内嵌于Linux Kernel中。SElinux定义了系统中每个用户、进程、应用和文件的访问和转变的权限,然后它使用一个安全策略来控制这些实体之间的交互,安全策略指定如何严格或宽松的进行检查。
/bin基本指令,单用户模式下可用,任何用户可用。
/usr/lib含有更多用于用户程序的库文件。(/lib是内核级的 , /usr/lib是系统级的)
/usr/local 系统管理员在本地自己安装的软件,有bin,sbin,lib等。(/usr/local是用户级的)
/var用于储存variable(或不断改变的)文件,例如日志文件和打印机假脱机文件。
/tmp 用户和程序的临时目录。/tmp给予所有系统用户读写权。
4.重要命令. du, df, top, free, pstack, su, sudo(sudo -, sudo -s), adduser, password
du 命令格式:du [选项] [文件]
命令功能:显示每个文件和目录的磁盘使用空间。
命令参数:-a 显示目录中个别文件的大小。
-b 显示目录或文件大小时,以byte为单位。
-c 除了显示个别目录或文件的大小外,同时也显示所有的目录或文件的总和。
-s 仅显示总计,只列出最后加的值。
-h 以K、M、G为单位,提高信息的可读性。
df 命令格式:df [选项] [文件]
命令功能:可显示目前所有文件系统的可用空间及使用情况(动态显示过程)。查看哪一级文件大小、使用比例、档案系统 及其挂入点,但对文件却无能为力。
命令参数:-h 表示使用[Human-readable]的输出,也就是在档案系统大小使用GB、MB等易读的格式。
top 命令功能:提供了实时的对系统的处理器的状态监监视。显示系统中各个进程的资源占用状况。
命令参数:-d指定每两次屏幕信息刷新之间的时间间隔。
-p通过指定监控进程ID来仅仅监控某个进程的状态。
pstack 命令格式:root# pstack PID
命令功能:可显示每个进程的栈跟踪。必须由相应进程的属主或root运行。可以使用pstack来确定进程挂起的位置。此命 令允许使用的唯一选项是要检查的进程的PID。
su 命令格式:su
命令功能:用户之间的切换
命令参数:su 切换了root身份,但shell环境仍然是普通用户的shell。
su - 用户和shell环境一起切换成root身份。
su -f不必读启文件,仅用于csh或tcsh两种shell。
-l 加了这个参数之后,就好像重新登录一样,部分环境变量都是以该使用者为主,并且工作目录也会 改变。如果没有指定USER,缺省情况是root。
sudo 命令功能:普通用户可以使用root权限来执行指定命令。
命令参数:-s执行环境变数中的SHELL所指定的shell,或是/etc/passwd里所指定的shell。
-v 显示版本编号
-h 显示版本编号及指令的使用方法说明。
-l显示出自己的权限。
-k将会强迫使用者在下一次执行sudo时问密码
adduser 命令格式:adduser[必要参数][选择性参数]用户名
命令功能:指令根据指令行参数给系统添加用户,它的配置信息保存在/etc/adduser.conf文件中。
命令参数:-r|--system创建一个系统用户
-q 只显示警告信息和错误信息,不显示一般信息。
--debug 用于测试。
passwd 命令功能:修改用户密码。
命令参数:-d 删除密码
-f 强制执行
-k 更新只能发送在过期之后。
5.如何使用命令安装gcc/g++, gdb, vim
安装(升级)gcc
sudo yum install centos-release-scl -y
sudo yum install devtoolset-3-toolchain -y
sudo yum install gcc-c++
sudo scl enable devtoolset-3 bash
安装gdb
apt-get install gdb
安装(升级)vim
yum install ncurses-devel
wget https://github.com/vim/vim/archive/master.zip
unzip master.zip
cd vim-master
cd src/
./configure --with-features=huge -enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config
sudo make
sudo make install
export PATH=/usr/local/bin:$PATH