linux常用操作命令

    xiaoxiao2023-09-24  156

    记录一下自己整理的linux常用操作命令。

    基本命令

    1.文件夹操作

            ls /path/    查看目录信息

            ls -l /path/    查看详细信息(或者直接输入ll)

            ls -a/path/ 查看隐藏文件

            ls ../ 回退目录

            pwd 查看当前所在目录的绝对路径

            cd /path 切换目录,如果不带参数则切换到用户主目录

            mkdir ./test    创建文件夹

            mkdir -p a/b/c    如果要创建的文件夹的父目录不存在,则自动创建

            rmdir    删除文件夹(只能删除空的文件夹)

            rm -r /a/b    (可以删除非空文件夹)

            rm filename 删除文件

            rm -rf 强制删除文件或文件夹

            补充:ctrl+insert为复制  shift+insert为粘贴

    2.创建文件

            常见的三种方式

            *touch a.avi    创建一个空的文件

            *echo "chuanzhiboke" > aaa.txt    把">"左边的输出放到右边的文件里(>>是追加内容)

            *vi bb.txt    用文本编辑器编辑一个文件并保存

                进去按下"i"才可以输入,输入完毕按"ESC"退出输入状态,然后再输入":q"就可以退出编辑了

                按":wq"是保存退出,如果是只读文件,"wq"后面加!是强制保存

    3.移动文件夹

            mv 文件1的目录加文件名 移动到的文件的目录

    4.拷贝文件

            cp -r srcFile destFile

                -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件

    5.查看文本文件内容

            cat 文件名    (显示小的文件一下显示出来,比较方便)

            more 文件名    (翻页:空格,往回翻:b,退出":q"或者ctrl+c)

            less 文件名    (更强大可以用"上"和"下"一行一行翻页,退出q)

                        "/内容" 可以搜索内容

            head -10 文件    查看文件的头部10行

            tail -20 文件    查看文件的尾部20行

            tail -f 文件    事实刷新显示文件的尾部,文件后面添加信息可以同步的显示出来

    文件归档压缩(1打包--归档;2压缩)

            1.打包/解包

            tar -cvf 打出来的包名.tar 被打包的文件夹或文件(空格分隔)

            c:表示创建一个打包文档

            v:显示打包的速度

            f:表示要打成tar包的名字

            tar -xvf 已打包的包名.tar

            x:表示从一个现存的tar文件中解包操作

        2.压缩/解压

            gzip 没压缩的包名.tar    压缩(压缩后tar后面会加上.gz后缀名)

            gzip -d 压缩后的包名.tar.gz        解压

            一次性打包压缩:

                tar -czvf 压缩后的文件名 目标文件夹

                z:代表以zip格式打包压缩

                也可以这样写:zip -r 压缩后的文件名 目标文件夹

            一次性解包解压:

                tar -xzvf 压缩过的文件

                也可以这样写:unzip 压缩的文件

            解压到指定的目录下:

                tar -xzvf 压缩过的文件 -C 目标目录

    文件的权限管理

            1.linux系统中对文件权限的描述机制

                在查看文件详细信息的时候在文件前面会有一串英文字母

                d     r w x   r w x     r - x

                类型  拥有者  所属组    其他人

                类型如果是"d"代表是文件夹,是"-"代表是文件

                上面的权限信息可以表示为3组二进制符号:  111 111 101

                    有权限写1,没权限写0

                进而可以表示为3个十进制数: 7   7   5

            2.修改权限

                chmod u+rwx file 为file添加或取消所属用户的权限

                "+"号前面

                    u:代表所属用户

                    o:代表其他用户

                    g:代表所属组的成员用户

                "+":表示添加权限

                "-":表示减少权限

                chmod 567 file 用数字也可以表示权限

                    5 --->  101 ---> r-x

                    6 --->  110 ---> rw-

                    7 --->  111 ---> rwx

            3.通过实例理解rwx三种权限的含义

                r    对文件:是否可以读取文件的内容   cat

                    对文件夹:是否可以列出文件夹内的子节点信息   ls

                w    对文件:是否可以修改文件的内容  >>   vi

                    对文件夹:是否可以更改文件夹的子节点

                x   对文件:是否可当做一个命令或者程序来执行

                    对文件夹:是否可cd进入

            4.修改文件的所有者

                chown root:root 文件名

                将文件的所有者改成hadoop用户,所属组改成hadoop组

    用户管理

    1.添加用户

                useradd 用户名

                需要设置密码才能正常登陆:

                passwd 要被添加密码的用户

                然后再输入新密码

    2.删除用户

                userdel 用户名    此删除方法,会保留用户的主目录

                userdel -r 用户名  此删除方法不保留用户的主目录

    3.修改用户属性

                *修改用户名(login)usermod -l new old (把b改为a)

                    例:usermod -l zdx666 zdx123

                *添加组 usermod -g sys tom

                    例:usermod -g root itcast 将itcast用户的组改为root组

                *修改用户的宿主目录

                    例:usermod -d /home/itcast itcast0830 将itcast0380的主目录改成/home/itcast

                    (得手动创建/home/itcast这个目录)

                添加多个组 usermod -G sys,root tom

                    给tom用户添加了两个组

                锁定用户账户密码

                解锁用户帐号

    用户组管理

            1.创建用户组

                groupadd 组名

            2.删除用户组

                groupdel 组名

            3.修改用户组的组名

                groupmod -n newname grpname

            4.查看用户所属的组

                groups itcast

    用户及用户组相关配置文件

            1.用户配置信息存放位置

                保存用户信息的文件:/etc/passwd

                保存密码的文件:/etc/shadow

            2.用户组配置信息存放位置

                保存用户组的文件:/etc/group

                保存用户组密码的文件:/etc/gshadow(设置组管理员时才有用)

    网络配置管理       

            1.网卡地址配置

                检查网络连通性:ping destip

                查看ip地址:ifconfig

                修改ip地址(临时修改):ifconfig 指定的以太网卡 修改后的ip地址 netmask 255.255.255.0

                通过配置文件修改ip地址(永久修改):

                    vi /etc/sysconfig/network-scripts/ifcfg-网络接口名称(默认都是第一个) 修改该配置文件即可改ip地址

                        (1)BOOTPROTO值改为static

                        (2)在最后加

                                IPADDR=192.168.75.100

                                GATEWAY=192.168.75.1

                                NETMASK=255.255.255.0

                                DNS1=192.168.75.1

                通过setup修改网络配置:

                    在root权限下执行setup指令可以打开一个带菜单的伪图形界面来修改网络配置

                    (在Options里把编码格式改为utf-8)

                service network restart

                重启网络服务

            2.主机名配置管理

                查看主机名:hostname指令

                修改主机名:vi /etc/sysconfig/network  修改其中的hostname配置项

                        修改完成之后要重启服务器才能生效

                主机名-IP映射

                    服务器网络寻址时默认是现在本地的hosts文件中查找IP映射,通过修改hosts来映射局域网内部的主机名非常方便

                    实现方法,将局域网内的每一台主机的“hostname-ip”写入每一台主机的hosts文件中:

                        vi /etc/hosts

                        192.168.2.150  itcast-server-01

                        192.168.2.151    itcast-server-02

                        192.168.2.152    itcast-server-03

            3.网络服务启动与停止

                列出系统所有应用服务状态

                    service --status-all

                查看指定服务运行状态

                    service 服务名 status

                启动服务

                    service 服务名 start

                停止服务

                    service 服务名 stop

                列出所有服务的随机自动启动配置:

                    chkconfig --list

                关闭服务的随机自启

                    chkconfig 服务名 off

                开启服务的随机自启

                    chkconfig 服务名 on

            常用示例:

                重启网络服务 service network restart

                停止httpd    service httpd stop

                启动 httpd    service httpd start

                关闭防火墙服务  service iptables stop

                关闭防火墙自动启动   chkconfig iptables off   

    常用系统管理指令

        1.磁盘/内存使用信息查看

            df -h 查看磁盘空间状态信息

            du -sh * 查看指定目录下所有子目录和文件的汇总大小

            free 查看内存使用状况

        2.进程管理

            top 查看实时刷新的系统进程信息

            ps -ef 查看系统中当前瞬间的进程信息快照

            ps -ef|grep myshell.sh   搜索myshell进程的信息

            kill -9 pid  杀掉进程(-9表示强制杀死)

        3.sudo权限的配置

            给普通用户赋予sudo权限:

                进入root用户修改vi /etc/sudoers文件里的信息

                加入hadoop  ALL=(ALL)       ALL

                意思是让hadoop用户可以在任何主机以任何身份执行所有命令

            sudo -lU itcast        查看itcast用户是否配置成功

            配置成功后itcast用户就可以在sudo命令下也能够添加用户了:sudo useradd newuser

        4.vi编辑器

            vi 文件名     执行vi编辑器进行编辑

            按i进入编辑模式

            按ESC退回一般模式

            一般模式下输入":wq"退出

            在文本里撤销的话,先回到一般模式,然后按u就行了

            一下删除5行,按下5再按两下d

            保存的另一种方法:在一般模式下按shift+zz就好

        5.修改系统的默认启动级别

            vi /etc/inittab  修改这里面的文件

        6.其他指令

            grep(搜索的是文件的内容)

                grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本内容,并把匹配的行打印出来\

                示例:太多,略

                和其他指令结合搜索

                service --status-all | grep 'httpd' 搜索有'httpd'关键字的所有服务的状态

            find(可根据文件名,文件时间,文件大小等等条件进行查找)

                按照文件名查找

                find ./ -name '*.txt'

                按照文件类型

                find ./ -type f   f表示普通文件

                find ./ -type l   l表示快捷方式文件

            wc

                统计文本信息(行数、词数、字符数)

                wc -c/w/l

                如果直接写wc 文件  就统计出所有信息

            date

                查看当前时间

                date "+%Y%m%d" 这是格式化为年月日

                date -s "年-月-日 时:分:秒" 更改当前时间为指定的时间

            echo

                打印一个字符串

                echo "字符串"

                如果提前定义好了一个字符串 str="123"

                那么 $echo 表示输出这个字符串

            whoami    查询当前登陆者的身份

            which    查询指定命令的$PATH路径

    安装软件(运行环境)

    jdk安装:

            1 alt+p进入sftp命令行,将文件从真机的目录里上传到linux虚拟机里: put jdk在真机的目录

            2 解压到指定的目录下:tar -zxvf jdk -C 指定的目录(/usr/share)

            3 配置环境变量:vi /etc/profile  进入这个文件,配置环境变量

                在最后一行加入

                    export JAVA_HOME=/usr/share/jdk    和windows一样,创建一个JAVA_HOME

                    export PATH=$PATH:$JAVA_HOME/bin

            4 执行编辑后的文件

                source /etc/profile

        tomcat安装

            1 上传解压后

            2 去bin目录里执行一个脚本  sh startup.sh

            3 检查有没有执行的命令  略

            4 记得把防火墙关掉

            5 在外面进入网页访问tomcat

        eclipse安装

            简单 略 直接下载包下一步即可

        软件包管理器RPM的安装

            安装Mysql服务端:

                1 先上传到linux系统中

                2 用rpm安装MySQL,命令:rpm -ivh MySQL-server-5.1.73-1.glibc23.i386.rpm

                3 因为和系统中已有的文件有冲突,需要删除系统上已经有的MySQL文件

                    rpm -qa | grep mysql   用rpm查询所有软件包太多,加条件查询到mysql的软件包

                    rpm -e mysql-libs-5.1.66-2.el6_3.i686 --nodeps    删除这个包,nodeps是忽略其他依赖

                4 重新安装

            安装Mysql客户端:

                rpm -ivh MySQL-client-5.1.73-1.glibc23.i386.rpm

            然后给mysql的root用户设置密码:/usr/bin/mysql_secure_installation

            后面提示的除了"是否禁止远程调用"设置为n,其他都设置y

        yum在线安装软件

            作用:安装指定的RPM(软件包)

            yum install tomcat    安装tomcat这个软件包

    secureCRT

    输入:help命令,显示该FTP提供所有的命令

        pwd:  查询linux主机所在目录(也就是远程主机目录)

        lpwd: 查询本地目录(一般指windows上传文件的目录:我们可以通过查看"选项"下拉框中的"会话选项",我们知道本地上传目录为:D:/我的文档)

        ls:   查询连接到当前linux主机所在目录有哪些文件

        lls:  查询当前本地上传目录有哪些文件

        cd:   改变远程上传目录

        lcd:  改变本地上传目录的路径

        get:  将远程目录中文件下载到本地目录

        put:  将本地目录中文件上传到远程主机(linux)

        quit: 断开FTP连接

        securecrt  按下Ctrl+S会假死,在按下Ctrl+Q就可解决

    最新回复(0)