Linux常用基本命令

Linux常用基本命令

1、显示当前所在的位置:# pwd,注意:该命令它是显示绝对路径
2、移动切换到任意的指定目录下:# cd
3、# ls -l,选项:-l long显示长格式信息(详细信息)
                -》# ll  也能显示详细信息
4、选项是可以联合使用的
                -》# ls -ld /etc/
5、ls -a all显示所有全部的文件或者目录,包括隐藏文件

Linux文件目录常用命令

1、创建一个新的目录:# mkdir test
        -》相对路径创建:# mkdir test
        -》绝对路径创建:# mkdir /root/test02
2、递归创建多个目录:# mkdir -p test03/file01
        -》选项:-p代表递归创建
3、创建一个空的文件:# touch file.txt
        -》创建一个带空格命名的文件:# touch "prg file",加上双引号
        -》但是不建议大家创建带空格的文件
4、删除一个文件:rm file
5、删除一个目录:# rm -r test
        -》选项:-r,代表目录
6、强制删除一个文件或者目录:# rm -rf test04
        -》选项:-f,代表强制操作
7、复制拷贝一个文件到一个目录下:# cp file.txt test
        -》拷贝一个目录到另一个目录下:# cp -r temp test/test02/
        -》选项:-r,代表目录
8、剪切一个文件:# mv file.txt temp
9、重命名一个文件:# mv file.txt zhanghao.txt
10、查看一个文件内容:# cat beifeg.list 
11、查看一个内容较多的文件可以使用:# more beifeg.list
        -》按空格一页页查看,按回车一行行查看,按q退出浏览状态            
12、查看文件前几行:# head -5 /etc/passwd,可以指定行数,默认为10行
13、查看文件末尾的几行:# tail -2 /etc/passwd
        -》选项:-f ,实时滚动查看文件内容,一般用来查看日志信息
14、分页查看文件内容:less /etc/passwd 
        -》可以按pgup或者pgdn向上或向下翻页查看
        -》按q退出

VI编辑器

1、命令模式
    -》在一开始进入文件后,所处的就是命令模式
2、插入模式
    -》该模式下可以对文件内容进行编辑修改添加
3、最后行模式
    -》按下shift+冒号,进入最后行模式
    -》:wq保存并退出,!感叹号代表强制操作
4、常用快捷键:
    -》显示行号:set nu,最后行模式
    -》移动到第一行:gg,命令模式
    -》移动到最后一行:G,命令模式
    -》删除一行:dd,带有剪切的效果,命令模式
            -》可以删除多行,比如:3dd
    -》撤销上一步的操作:u,命令模式
    -》黏贴:p,命令模式
    -》复制:yy,命令模式
            -》同理dd,可以复制多行,比如:3yy
    -》替换::1,$s/nologin/666/g
    -》1,$-》代表一个范围,第一行到最后一行
    -》s-》代表替换的意思
    -》/nologin/666/代表被替换和替换的内容
    -》g-》代表通行的意思

权限修改

chmod
-》修改文件和目录的权限,所有者和管理员
-》用字母修改权限:# chmod u+x 52.txt
        -》赋予一个权限用加号表示
        -》撤销一个权限用减号表示:# chmod u-x 52.txt
        -》同时添加多个权限:# chmod u+x,g+x,o+x 52.txt 
        -》用逗号隔开
-》用数字修改权限:# chmod 644 42.txt 
                    # chmod 755 42.txt 
-》递归修改多个文件目录的权限:# chmod 777 -R temp2
-》R表示递归修改
-》一个组可以有多个用户
        -》teacher组-> t1 t2 t3...
-》一个用户也可以加入多个不同的用户组
3、修改所有者和所属组
-》命令:chown,chgrp  只有管理员才可以使用
-》 chown zhanghao 52.txt ,# chgrp zhanghao 52.txt 
-》同时修改:# chown zhanghao:zhanghao 123.txt
-》注意:修改的用户必须是系统已经存在的用户或者用户组

drwxr-xr-x.   2 root root  4096 Oct 11 18:47 temp
-rw-r--r--. 1 root root 0 Oct 11 18:47 filetext.txt

用户和用户组
1、/etc/passwd 存放系统用户的信息
2、严格来说UID为0的就称为超级管理员
3、root:x:0:0:root:/root:/bin/bash
-》UID:0 用户ID userID
-》GID:0 用户组ID groupID
4、在创建了一个普通用户的同时会创建一个同名的用户组
5、添加一个用户:
-》useradd zhanghao
-》passwd zhanghao
6、创建一个用户的同时会在/home目录下生成一个与用户名同名的目录
7、添加一个用户组:
-》# groupadd zhanghao01
8、切换用户:# su - zhanghao02
9、删除用户:# userdel -r zhanghao02
-》选项:r 彻底删除,包括用户主目录
注意:切换用户时一定要加上 - 横杠

Linux符号命令

1、# grep 'root' /etc/passwd
2、命令:grep -》  作用:过滤 筛选
3、格式:命令 条件 操作对象
4、管道符号:|  一个竖线
5、将前面的命令的输出结果传递给后面一个命令进行处理
            -》# cat /etc/passwd | more
            -》# cat /etc/passwd | grep 'root'
            -》# ifconfig | grep 'inet6 addr:'
6、追加:>>  两个连续的大于符号
            -》# ifconfig | grep 'inet6 addr:' >> /home/zhanghao/eth0.log
            如果写入的文件不存在,会自动的创建一个文件
7、覆盖:>   一个大于符号
            -》# head -3 /etc/passwd > /tmp.pass 
            覆盖掉原来的文件内容
8、统计命令:wc -l
            -># wc -l passwd
9、系统管理命令:
            -》# ps -ef 显示系统当前运行的所有进程的详细信息
            -》# ps -ef | wc -l 统计有多少个进程

Linux磁盘管理

1、brw-rw----   其中b也是占位符,代表block,块设备文件的意思
2、sda-》代表第一块硬盘,sda1,2代表第一块硬盘的第一个和第二个分区
                -》同理第二块硬盘sdb
                -》d表示disk硬盘的意思
                -》s表示硬盘接口:Sata sas 一般用于服务器
                                scsi ide 一般用于个人电脑
3、# fdisk -l -》 几块硬盘-》每块的容量-》每块的分区
4、cylinders-》磁柱,简单理解判断分区与否,以及分区的信息
5、关机重启命令:init 0,init 6,reboot,shutdown
6、添加硬盘前需要关闭虚拟机
7、对于一块新添加的硬盘进行分区:# fdisk /dev/sdb
8、创建一个新的分区:n   add a new partition
9、磁盘中有主分区和扩展分区的概念
10、扩展分区必须要进行逻辑分区才能使用
11、可以删除分区重新操作d   delete a partition
12、分区完毕后,按w 保存并写入退出,然后重启虚拟机立即生效
13、格式化硬盘,格式化命令:mkfs,
14、Linux中的文件系统:ext1,2,3,4
            centos 7 -》xfs
            windows NTFS FAT16 FAT32
            -》# mkfs.ext4 /dev/sdb5
15、挂载硬盘,命令:mount-》临时挂载
16、挂载需要一个挂载点,在根目录下有一个默认的文件夹,/mnt
            -》# mount /dev/sdb5 /mnt
17、查看挂载成功与否:
            -》# df -h
18、永久挂载硬盘:# vi /etc/fstab 写入配置文件    
/dev/sdb5     /mnt    ext4    defaults   0 0

压缩和解压缩

1、格式:.gz,压缩命令:gzip
    # gzip bf_test01
    641020 Oct 11 23:07 bf_test01
    127224 Oct 11 23:07 bf_test01.gz
    ->不保留原文件
2、解压缩命令:gunzip
    # gunzip bf_test01.gz 
    注意:gzip只能压缩文件,不能压缩目录
3、tar可以将一个目录打包成一个文件,打包的同时做一个压缩
            -》格式.tar
4、打包选项:c,显示详细信息:v,指定文件名:f
            解压缩:x,选项:z 压缩
5、# tar -cvf file.tar file/
            -》选项后先跟上打包后的文件名加上后缀,再加上要打包的文件名
            -》保留原文件的
            -》选项F ,必须要放在最后,后面跟上文件名
6、先打包再压缩生成:# gzip file.tar -》.tar.gz格式      
7、打包的同时做一个压缩:# tar -zcvf file03.tar.gz file03
8、解压到指定的目录下# tar -zxf file03.tar.gz -C /opt/
            -》大写C 指定目录

Linux搜索命令

1、命令:find
2、搜索是很消耗系统资源的(内存、CPU等等)
3、搜索尽量缩小搜索的范围
4、语法:find[搜索范围][匹配条件] 
5、根据文件名查找,选项:-name
            -》*表示匹配任意字符,?表示匹配单个字符
            -》# find / -name init
            -》# find /etc/ -name *init* -》包含关键字的搜索
            -》# find /etc/ -name init* -》搜索以某个关键字开头的文件
            -》# find /etc/ -name init???
            -》选项:-iname 不区分大小写
            -》# find /etc/ -iname init???
6、根据文件大小查找,选项:-size
            -》指定方式:+大于,-小于,不加符号表示等于
            -》单位:数据块 block
            -》一个数据块的大小:512字节=0.5k,1KB=两个数据块
            -》100MB,1MB=1024KB,100MB=102400KB
            -》102400KB*2=204800个数据块
            -》# find / -size + 204800
7、根据文件所有者、所属组查找,选项:-user -group
            -》# find /root/ -user root
            -》# find /root/ -group root
8、根据文件类型查找,选项:-type
            -》f 代表file文件,d 代表data目录
            -》-a 代表and  和
            -》# find /etc/ -name init* -a -type f
            -》# find /etc/ -name init* -a -type d

awk命令

1、语法:awk '条件1 {动作1} 条件2 {动作2} ... ' 文件名
2、功能:格式化输出内容-》printf
3、# awk '{printf $1 "\t" $5 "\n" }' test.txt
4、printf需要手动的添加换行,print不需要手动添加换行的
5、# df -h | awk '{print $1 "\t" $5 "\t" $6}' 

Linux时间命令

1、命令:# date
2、选项:-s
3、设定时间:# date -s "2016-10-12 16:31:20"
4、# date "+%Y%m%d",# date "+%y%m%d%H%M%S"
5、时间设定为7天前:# date -d '7 day ago' '+%y%m%d' 

RPM命令以及RPM包的管理

1、rpm包,后缀为.rpm格式的包
2、用rpm命令去管理
3、挂载光驱-》# mount /dev/cdrom /media/-》光驱是只读不可写的
4、# ls | wc -l列出当前目录下所有的包的个数
5、查询:# rpm -qa-》q表示查询,a表示全部
                    -》显示当前系统下全部已经安装好的RPM包
                    -》# rpm -qa | grep httpd 过滤筛选出个别的包
6、安装:选项:-i表示安装,显示进度信息-》vh
                    -》# rpm -ivh zlib-1.2.3-29.el6.x86_64.rpm
                    -》后缀加上.rpm
7、卸载:选项:-e表示卸载
                    -》# rpm -e zlib-1.2.3-29.el6.x86_64
    # rpm -qf /usr/bin/man 
                    -》-qf表示查询某个命令来自于哪个包文件
8、缺点:依赖性极强

YUM命令以及管理RPM包

1、同样可以管理RPM包
2、很好的解决了RPM包的依赖性,非常智能
3、# yum list-》列出所有已经安装好的RPM包
4、使用前提必须连接到外网(必须设置DNS)
5、YUM仓库
6、查询:# yum list | grep httpd-tools
7、@anaconda仓库名前面如果有@符号,表示已经安装过,没有表示未安装
8、安装:选项:install表示安装
            -》# yum install httpd-devel.x86_64
            -》# yum -y install httpd-devel.x86_64
                    -》选项:-y 表示直接确认
            -》Resolving Dependencies表示解析依赖
9、卸载:选项:remove表示卸载
            -》# yum -y remove httpd-devel.x86_64
10、YUM仓库位置:/etc/yum.repos.d
            -》.repo结尾的都叫做仓库配置文件
            -》gpgcheck=1是否开启校验
            -》gpgkey=file:校验码key
11、常见错误:
            -》DNS解析配置
            -》仓库位置不能更改

时间计划任务

1、一次性计划任务
    # at 11:33
    at> cp /etc/passwd /tmp/
    at> <EOT>
    job 3 at 2016-10-13 11:33
2、周期性计划任务
    -》必须前提启动相关的服务
        # service crond status
3、内容格式:
    如果时间是时间段,可以使用横杠(-)来表示一段连续的时间,
    使用(,)表示若干不连续的时间,
    使用星号(*)表示所有的时间,
    使用除号(/)表示间隔时间

4、计划任务条件示例:
*分  *时  *日      *月      *周  cmd
0   2   *       *       3   cp /etc/passwd/tmp  每周三凌晨2点备份/etc/passwd
5   1   10,25   *       *   rm -rf /tmp/*       每个月10号和25号凌晨1点5分执行
*/10    *   *       *       *   ntpdate         每10分钟执行时间同步
0   1-6 *       *       *                   每天凌晨1点到6点执行

4、示例:每一分钟将文件的结果内容写到某一个文件中去
    */1 * * * * date >> /tmp/date.log
    指定完计划需要重启:# service crond restart
    删除计划任务:# crontab -r
        -》删除是全部删除

Linux防火墙

1、查看防火墙状态:# service iptables status
2、Linux系统中一般查看服务都用service命令
3、使用service命令,需要使用管理员身份
4、关闭防火墙:# service iptables stop
5、查看系统服务开机启动的状态# chkconfig
6、使用chkconfig命令,需要使用管理员身份
7、关闭防火墙开机启动设置:# chkconfig iptables off
8、sudo权限设置:zhanghao ALL=(root)NOPASSWD:ALL
                -》建议后续使用同一个用户学习
9、selinux是一个安全子系统
    -》/etc/sysconfig/selinux
    -》SELINUX=disabled设置禁用
10、搭建一个完整的Linux基本环境
-》安装虚拟机、操作系统
-》配置IP、主机名、映射
-》设置DNS域名解析
-》创建一个普通用户
-》为用户设置sudo权限
-》卸载系统自带openJDK
-》安装自己的JDK配置环境变量
-》禁用防火墙和selinux设置

sudo权限

1、操作的对象是命令
2、让普通用户执行管理员用户才能执行的某一些操作,进行授权
3、修改sudo配置命令:# visudo,必须管理员身份修改
4、查看帮助信息:# man 5 sudoers
5、root    ALL=(ALL)       ALL
            -》第一个ALL:代表的是IP地址或者网段
            -》第二个ALL:代表被管理主机,可以不写,默认为root
            -》第三个ALL:代表具体被授权的命令(绝对路径)
            -》# whereis shutdown 找到命令所在的存放路径
            -》zhanghao ALL=/sbin/shutdown -r now
                        -》注意命令一定要写绝对路径
            -》$ sudo shutdown -r now
            -》$ sudo -l 查看用户被授权哪些权限操作

系统管理命令

1、# ifconfig-》查看网络基本信息
2、# top-》实时滚动查看系统整体资源信息
            -》load average:表示负载
            -》Tasks:表示当前服务器的进程和状态
            -》Swap: 交换分区-》类似虚拟内存的概念
            -》按q退出浏览状态
3、# free-》查看当前系统中内存的信息
            -》选项:-m 代表单位为:MB
            -》默认不加选项,单位为:KB
4、# netstat-》net表示网络,stat表示状态-》查看网络状态的信息
            -》所有用户都可以使用
            -》语法格式:命令+选项
            -》选项:-t表示TCP网络协议-》更加安全、可靠
            -》选项:-u表示UDP网络协议-》直接传输数据-》不稳定
            -》选项:-l表示listen监听,查看监听的端口
            -》选项:-r表示查看路由(网关)
            -》选项:-n表示查看IP地址和端口号
            -》第一种:# netstat -tlun-》查看系统当前已经开启的端口情况(监听)
            -》Apache的端口一般默认都是80开头
            -》第二种:# netstat -an-》查看所有的监听状态
            -》ESTABLI表示已经连接
            -》与-tlun最大的区别就是能够查看正在连接的网络程序
            -》第三种:# netstat -rn查看当前计算机的路由列表(网关地址)
5、$ kill -9 2084 强制结束某个系统进程,不加-9,默认是正常结束进程     

Linux帮助命令

1、命令:man
2、Linux中配置文件都有一定的格式,有规律可循
3、service-name   port/protocol   [aliases ...]
4、查看配置文件技巧:文件的作用和文件的格式
5、man命令可以查看命令的帮助和配置文件的帮助信息
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值