Linux基础


绝对路径: 从根目录开始,指定一个位置、文件

相对路径:从当前进程工作目录位置开始,指定一个位置、文件。

shell:命令解析器。默认运行在终端当中的程序(进程)。    —— unix —— born

bash:born again shell。 Linux版的shell。命令解析器。

文件:
    在Linux操作系统中,所见皆文件。

用户:
    Linux 是一款多用户多任务的分时复用操作系统。

家目录:宿主目录。

    每个用户不同。—— cd 回车  所到的目录。

ls -l 命令:

    文件属性 :10 个字符,分为 2组。

        第一组: 第一个字符。 代表文件类型: 7种 —— Linux下不以文件后缀名,作为区分文件类型的依据。

            普通文件: -
            目录文件:d
            软链接文件:l        —— 相当于  windows 快捷方式。

            字符设备文件:c        —— 伪文件(不占用磁盘存储)
            块设备文件:b        —— 伪文件
            套接字文件:s        —— 伪文件
            管道文件:p        —— 伪文件

            unknown 文件。

        第一组: 9 个字符。分3组。—— 文件所有者、文件所属组、其他人 : r、w、x        
 
    硬链接计数: 有多少个 文件公用同一个 inode 编号

        创建硬链接:ln 旧文件名  新硬链接文件。

        特征:文件和硬链接文件之间,除文件名不一样以外,其他信息完全一致。并能实时同步。

    文件所属用户: 谁创建默认属于谁

    文件所属用户组: 谁创建默认属于该用户所在用户组。     用户——同名用户组

    文件所占存储空间大小(字节):文件:实际大小。 目录文件:4k整数倍

    文件创建、最后一次修改时间:    初创文件:实际创建时间。修改过的文件,修改时间。

    文件名。

ls 常用参数:

    -a :常隐藏文件。 —— 以 “.”开头的文件或目录

    -d:查看目录本身属性。

    --help:查看帮助信息。

    TAB键:自动补齐。histroy:历史命令。man 帮助手册。

重定向:
    > 重定向到指定文件,文件不存在自动创建。存在覆盖源文件。

    >> 将内容追加到指定文件,文件不存在自动创建。存在不覆盖

分屏读取大文件:

    more、 less、cat、tac

管道:
    “|” 将 左边的命令执行结果,写给右边。再执行右边的命令。

    ps aux | grep xxx    —— 筛选系统中,所有正在运行的 xxx 进程。

cd:    change directory    —— 进入某个目录。

    cd /bin  绝对路径 

    cd .. 上一级目录

    cd ./ 当前目录

        cd ~ 回用户宿主目录(家目录)

    cd 回车    回用户宿主目录(家目录)

    cd - : 切换到上一次工作过的目录中。

pwd:    查看当前进程工作目录位置

    
终端提示符的语法规则:

     用户名@主机名:当前shell进程工作目录$/#    —— $:普通用户、#:管理员。

创建目录:

    mkdir 目录名  

    -p: 递归一次性创建多个目录

删除文件和目录:    

    rm -r         r: 递归删除目录子内容。

    ★ rm 命令删除的文件、目录不易恢复 !!!!!!!!!!

ln命令:
    硬链接:    ln  源文件   连接文件

        不能给目录创建硬连接。

    软连接:    ln  -s  源文件   连接文件

        等同于windows下的快捷方式。建议使用“绝对路径创建软链接”

        可以给目录创建软连接。

目录文件、拷贝:

    -r:    递归拷贝目录内容。以执行命令时,创建新文件、目录

    -a:    递归拷贝目录内容。保留文件原有属性。

mv命令:
    移动文件: mv 待移动文件名  目录位置。

    改名文件: mv 待改名文件名  不存在的文件、目录名

压缩命令:

    gzip:
        不能打包压缩!不能保留源文件。不能压缩目录        
    bzip2:
        不能打包压缩!不能压缩目录
    tar:
        打包。


    ====结论:
        压缩: tar -zcvf  xxx.tar.gz  打包压缩材料。         tar -jcvf  xxx.tar.bz2  打包压缩材料。    

            z: gzip格式压缩                j: bzip2 格式压缩

            c: 创建压缩文件

            v: 输出压缩详细

            f: 指定压缩后的文件名

            .tar.gz :    .tar.bz2: 不具有语法强制性。但是推荐使用!

        解压缩:tar -zxvf  xxx.tar.gz              tar -jxvf  xxx.tar.bz2 。

    zip:
        压缩:zip -r  压缩包名(没有.zip后缀)    打包压缩材料。

        解压缩: unzip -d 解压缩位置目录   xxxzip(待解压缩文件)     
    rar:

        压缩:rar a -r 压缩包名.rar(后缀可加可不加) 打包压缩材料。

        解压缩: rar  x  待解压缩包名.rar

切换用户:

    su 用户名:    切换到指定用户登录,不修改工作目录位置。

    su - 用户名:    切换到指定用户登录,修改工作目录位置到 该用户的 宿主目录。

    su - root:切换root用户登录,修改工作目录位置到 root 的 宿主目录。

    su  root:切换root用户登录,不改变工作目录位置  等价于( sudo  su )

    sudo关键字:临时获得一次root用户权限。执行完后续命令,该权限失效。

添加新用户:
    sudo  adduser  新用户名

删除新用户:
    sudo deluser 用户名

修改文件所有者:
    chown  新用户名  待修改用户的文件名
    

添加新用户组:
    sudo addgroup 新组名

删除新用户组:
    sudo delgroup 组名

修改文件所属组:
    chgrp 新组名  待修改组名的文件名


chmod:
    修改文件、目录访问权限。 

    r、w、x : 4/2/1  

    示例: r-x-w-r--:     5 2 4

r、w、x 对于目录、文件的含义是否相同??

        文件                目录

r:    查看文件内容            目录的内容(目录项)可以被查看
    cat、more、less、tac                ls、vim(读)
    vim(读)   gedit(读)

w:    修改、删除 文件内容            目录的内容(目录项)可以被修改、删除、增加
    cat> / can >>                mv、cp、rm、rmdir、mkdir、touch。。。
    vim(写、删) /gedit(写、删除)

x:    该文件可以运行。            该目录可以被进入
                        cd

进程信息查看:
    
    ps aux | grep xxxx

    top —— Linux下的 任务管理器。

终止进程:

    kill  -9   欲终止的 进程ID (可以通过 ps aux | grep 获取)        9 —— SIGKILL

前台、后台:

    是否能与用户完成交互。

    & : 将进程放置到后台执行。

    jobs: 查看后台运行的进程

    fg:恢复后台一个进程到前台执行。  + 优先级高。 指定 某一个进程恢复到前台来。  用 jobs查看的 “进程编号”

多终端热键:
    Ctrl + Alt + ↓ 或 ↑  ——  虚拟一块新桌面

    Ctrl + Alt + T —— 唤醒一个新终端(独立)

    Ctrl + shift + T —— 在一个终端里,创建多个shell标签。

ifconfig:
    查看当前网卡相关信息: —— IP地址。

    临时设置IP地址:

        sudo ifconfig ens33  新IP

        系统重启失效。

        sudo ifconfig ens33 up/down   使用命令 网卡启动、关闭

    永久设置IP地址:

        图形: 设置——网络——有线连接 + —— IPv4 —— 手动 —— 填入地址、子网掩码 、网关 —— “添加”

            网址: 网段。IP里面倒数第二字段。

            子网掩码: 255. 255.255. 0

            网关:网段确定后,网关即为该网段的 第一个ip地址。192.168.xxx.1  —— 192.168.xxx.255 (广播地址)

        命令:—— 通过修改配置文件,达到永久修改IP的目的。

            修改  /etc/network/interfaces 文件。 添加 网址、子网掩码、网关。  指定DNS服务器

ping :
    发送一个测试数据包,到指定的 IP地址。测试是否 畅通。

    Ctrl + c 终止。 

    -c  参数 指定发数据包的 次数。

虚拟机网络设置:

    桥接模式:
        路由器给 虚拟 Linux 单独分配一个 IP地址。与 windows 所在同一网段。

    NAT模式:
         Linux 虚拟机借助 windows 网卡,访问外网。linux 和 windows 公用 访问外网的iP。

find 命令:

    格式: find  待搜索目录     参数    “关键字”/ '关键字'

    -name:
        find  /home/itcast/go_1 -name "*.soft"     —— 在目录中找 .soft 结尾的文件。

    -type:
        f(普通文件)、d、l、c、b、p、s

        find /run/  -type "s"    —— 在目录中找 socket 文件。

    -size:
        区范围时: 两个范围 之前都有加  -size 关键字。
    
            + : 大于、 - : 小于
        单位:
            M 只支持大写。
            k 只支持小写。
            无单位——默认单位是 512B。
    -maxdepth:

        指定搜索层级深度。  放置于其他参数之前。

        find -maxdepth 1 -type 'f' -name "*.go"     —— 只在当前目录下,搜索 .go 文件、目录。

    -exec:
        对搜索结果执行命令

        find -maxdepth 1 -type 'f' -name "*.go"  -exec  ls -l {} \;

    -xargs:
        对搜索结果执行命令

        find -maxdepth 1 -type 'f' -name "*.go" | xargs ls -l 

        特例:如果文件名中含有空格, 如:文件名:‘abc xyz’

            find -maxdepth 1 -type 'f'  -print0  | xargs -0 ls -l 
grep:
    grep -r/-R  "love"  目标目录位置。

    递归的在指定目录中,找寻包含某字符串的 文件。

结合find、xargs、grep:

    find -maxdepth 1 -type 'f' -print0 | xargs -0 grep "love" -n

    找寻当前目录下,包含 “love”的文件,并显示在 多少行出现 (-n 行号)。

vim(vi)编辑器:        shell -- bash        vi —— vim

    三种工作模式:

        命令模式: 默认进入vim的工作模式。该种模式下,用户所有输入均被当成命令。

        编辑模式: 编写模式。写代码、文本内容。。。

        末行模式: 在 命令模式下, 按“:”进入末行模式。该种模式下,用户所有输入均被当成  末行命令。

    光标移动(命令模式);

        h:左
        j:下
        k:上
        L:右

    转换编辑模式:

        i:向光标所在位置的 “前面”插入数据!

        a:向光标所在位置的 “后面”插入数据!

        o:向光标所在位置的 “下一行”插入数据!

        s:以删除光标位置一个字符为代价,修改工作模式 —— 文本编辑模式。

        O:向光标所在位置的 “上一行”插入数据!

        I:向光标所在位置的 “行首”插入数据!

        A:向光标所在位置的 “行尾”插入数据!

        S:以删除光标位置一整行为代价,修改工作模式 —— 文本编辑模式。

    复制、粘贴:
        yy:复制光标所在行。

        Nyy:复制光标所在往后的N行(包含本行)。

        p:粘贴至光标所在位置,下一行。

        P(大写):粘贴至光标所在位置,上一行。

        yw:将光标放置于单词的首字符上, 复制一个单词。

        区域复制:将光标放置于待复制区域的首字符上, 按“v”(左下角出现 “可视”提示)使用 h,j,k,l 选择复制区域。

    剪切、粘贴:

        dd:剪切光标所在行。

        Ndd:剪切光标所在往后的N行(包含本行)。

        p:粘贴至光标所在位置,下一行。

        P(大写):粘贴至光标所在位置,上一行。

        dw:将光标放置于单词的首字符上, 剪切一个单词。

        区域剪切:将光标放置于待剪切区域的首字符上, 按“v”(左下角出现 “可视”提示)使用 h,j,k,l 选择剪切区域。

        d0:从光标所在位置,删除到 行首。

        d$(D): 从光标所在位置,删除到 行尾。    

    删除:
        同剪切。

    字符操作:
        x:删除光标选中字符

        r:光标选中字符, 按“r”, 按目标字符。 可以将 原字符,替换为 目标字符。

    跳转到指定行:

            命令模式:

        gg:第一行

        G:最后一行

        gg=G  自动排版。

        NG:跳转到 第 N 行

        vim hello.go  + 56 —— 打开文件同时,跳转到 56 行

            末行模式:

        :N 回车。 —— 跳转到 第 N 行    

    查找:
        1. 想象一个单词查找。 输入“/”(显示在末行的位置), 再输入要查找的单词。  

        2. 查找一个已经看到的单词。将光标放在该单词任意一个字符,“*”向后找, “#”向前找。 “n”代表下一个。

    撤销:“u”

    反撤销:ctrl - r

    替换:—— 末行模式。

        1. 单行替换:     :s/旧单词/新单词。     

                一行有多个“旧单词”, 使用 “g”。否则只替换一行的首个。

        2. 通篇替换:    :%s/旧单词/新单词。    

                一行有多个“旧单词”, 使用 “g”。否则只替换一行的首个。

        3. 指定区域替换:    :n,ms/旧单词/新单词。

                替换从n行开始,到m行结束,出现的“旧单词”, 一行有多个“旧单词”, 使用 “g”。否则只替换一行的首个。

    vim的配置:

        用户配置: 用户宿主目录下,创建 .vimrc (隐藏文件),写入 配置项。

        系统配置:sudo vi  /etc/vim/vimrc (非隐藏文件)。写入 配置项。

    测试某软件是否安装:

        sudo aptitude show 软件名    ——   “未安装”:根据提示安装。

                    —— “已安装”。
    Linux 远程 登录 Linux:

        ssh -l  目标主机用户名  目标主机 iP地址。 

        ——  输入目标主机 密码。

        登录到,目标主机的 “家目录”

    Linux 远程 发送文件给 Linux:

        scp -r  目标用户名@目标主机名:目标存储的绝对路径

        —— 输入目标主机 密码。

        文件 直接存在在目标主机的指定目录下

    

  

        

    

        

        
        
        
            
            

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值