LinuxC高级day01(Linux简介、Linux安装工具、Shell命令、Linux命令)

【1】Linux简介

1》Linux起源

2》查看系统版本

1>查看ubuntu版本

sudo lsb_release -a cat /etc/issue


2>查看内核版本   

uname -r cat /proc/version

 3》分层结构

  • 应用层:程序、命令

  • 内核层:五大功能:进程管理、设备管理、内存管理、网络管理、文件系统管理

  • 驱动:字符设备驱动、块设备驱动、网络设备驱动

  • 硬件:鼠标、键盘(字符设备驱动)、硬盘、U盘(块设备驱动)等

 4》系统关机重启命令

  • sudo shutdown -h now :立即关机

  • sudo shutdown -r now :立即重启

  • sudo reboot now :立即重启

  • sudo shutdown -h 时间 “提示语句":定义关机

  • sudo shutdown -r 时间 “提示语句”:定义重启

  • 通过 shutdown -c : 可以取消定时操作

 【2】Linux安装工具


1》软件包的管理机制

debian :deb软件包管理机制

redhat :rpm 软件包管理机制(Red Hat Package Manager)

 2》软件包分类

二进制软件包:xx.deb

源码包:xx.dsc

 3》软件管理工具

dpkg和apt工具的区别:

dpkg:离线安装,安装本地包,不能检查软件包的依赖关系,不关系仓库内的软件
apt:在线安装,通过仓库获取软件包资源,解决依赖关系,不能安装本地包

仓库:托管可安装软件包的公共服务器,用户从服务器获取软件并将其安装到用户计算机,雷速与应用商店

 4》dpkg工具

命令:dpkg -i 软件包全称     软件包命名


sudo dpkg -i 软件包的全称:安装软件

sudo dpkg -s 软件包名: 显示软件的安装状态
sudo dpkg -L 软禁包名: 显示软件的安装路径

sudo dpkg -r 软件包名:卸载软件

sudo dpkg -P 软件包名 :完全卸载软件,重新下载不会保留上一次配置


将安装包拖到虚拟机中的方式
(1) 直接拖文件到终端去掉单引号,末尾加空格。开头加mv移动到目标路径下
(2) 打卡虚拟机文件夹,直接复制粘贴;如果复制不了,执行sudo hq_vm.sh
(3) 设置共享文件夹


如果不行就重启一下虚拟机,或者先禁用然后再启用。

 5》apt工具

 1> apt-get

命令:sudo apt-get install 软件包名:安装 可以在/ect.apt/sources.list 看见源头 默认下载的包存放路径:/var/cache/apt/archives

sudo apt-get install 软件包名:软件下载并安装

sudo apt-get remove 软件包名:卸载软件

sudo apt-get --purge remove :完全卸载软件包

sudo apt-get autoremove 软件包名:卸载软件

sudo apt-get update:下载更新软件包列表信息

sudo apt-get upgrade :将系统中所有软件包升级到最新的版本

sudo apt-get upgrade 软件包名 :将系统中指定的软件包升级到最新的版本

sudo apt-get clean :清空安装包的存放路径

2> apt-cache

sudo apt-cache show 软件包名:获取二进制软件包的详细描述信息

sudo apt-cache policy 软件包名:获取软件包当前的安装状态

sudo apt-cache depends 软件包名:获取该软件包的依赖信息

sudo apt-cache rdepends 软件包名:获取所有依赖于该软件包的软件包

 6》ubuntu网络配置

1> 桥接模式

 桥接模式:编辑->虚拟网络编辑器->更改设置->选择vmnet0->桥接模式->桥接的网络适配器(根据主机的网络连接进行选择,当然选择自动也可以)->确定。

虚拟机->设置->网络适配器->选择桥接模式

点击图标选择有线设置 -> 点击+号 -> ipv4 -> 添加

2> nat模式

1)编辑->虚拟网络编辑器->更改设置->选择vmnet8->nat模式->确定。 2)虚拟机->设置->网络适配器->选择nat模式

【3】Shell命令 

1》Shell的基础知识

1> 概念

Shell 命令解释器 Shell是贝壳的意思,,在Linux里起到保护内核的作用

作用:负责把应用程序的输入命令信息解释给操作系统,将操作系统的指令处理后的结果再反馈给应用程序

2> 命令执行过程

(1)Bourne Shell(简称sh):Bourne Shell由AT&T贝尔实验室的S.R.Bourne开发,也因开发者的姓名而得名。它是Unix的第一个Shell程序,早已成为工业标准。目前几乎所有的Linux系统都支持它。不过Bourne Shell的作业控制功能薄弱,且不支持别名与历史记录等功能。目前大多操作系统是将其作为应急Shell使用。

(2)C Shell(简称csh):C Shell由加利福尼亚大学伯克利分校开发。最初开发的目的是改进Bourne Shell的一些缺点,并使Shell脚本的编程风格类似于C语言,因而受到广大C程序员的拥护。不过C Shell的健壮性不如Bourne Shell。

(3)Korn Shell(简称ksh):Korn Shell由David Korn开发,解决了Bourne Shell的用户交互问题,并克服了C Shell的脚本编程怪癖的缺点。Korn Shell的缺点是需要许可证,这导致它应用范围不如Bourne Shell广泛。

(4)Bourne Again Shell(简称bash):Bourne Again Shell由AT&T贝尔实验室开发,是Bourne Shell的增强版。随着几年的不断完善,已经成为最流行的Shell。它包括了早期的Bourne Shell和Korn Shell的原始功能,以及某些C Shell脚本语言的特性。此外,它还具有以下特点:能够提供环境变量以配置用户Shell环境,支持历史记录,内置算术功能,支持通配符表达式,将常用命令内置简化。

3> Shell命令格式

命令名称 选项 参数

命令名称 :必须得有

选项和参数 :可有可无,选项有-符号

 4> 历史记录命令

history:查看历史命令,默认显示的命令行数根据HISTSIZE开决定

echo $HISTSIZE:将变量的值打印到终端,echo命令作用是打印内容到终端HISTZSIZE=10: 临时修改变量的值(只在当前终端有效)

在家目录下的隐藏文件,通过vi打开:

.bash_history :默认存放2000条历史记录命令的文件

.bashrc:定义HISTSIZE(使用history)时默认显示的记录个数和HISTSIZE(.bash_history文件可以存放命令的个数)变量的脚本文件

修改.bashrc文件中HISTSIZE的值,将终端退出:可以永久修改

5> 起别名命令

alias:查看系统中起别名的命令

alias 新名='原来的命令‘ :起别名

unalias 新名 :取消别名

2》 Linux特殊字符

1> Linux通配符

* :匹配所有字符

? :匹配一个字符

[....] :匹配[]中指定的任意一个字符

[a-b] :匹配指定一个字符的范围

[^a] :除了其中指定的一个字符,均可匹配

2> 管道

格式:命令1 | 命令2

作用:将前一命令的输出作为下一个命令的输入

 3> 输入输出重定向

 > 文件名 :输出重定向,新建模式,会覆盖之前的内容

>> 文件名 :输出重定向,追加模式,不会覆盖之前的内容

2> 或者 &> 文件名:将由命令产生的错误信息输出到文件中

< 文件名 : 输入重定向

 4> 命令置换符

esc键下的 ` (不是单引号)

格式:命令1 ` 命令2`

作用:将一个命令的输出作为另一个命令的参数的一部分

 5> echo命令

作用:向终端输出指定内容

echo 字符串:向终端输出指定内容

-n :不换行输出

echo ”字符串“ :原样输出

【4】Linux命令

 1》系统维护命令

1> man

man man :查看man手册

1 . Executable programs or shell commands 可执行程序或shell命令

2 . System calls (functions provided by the kernel) 系统调用

3 . Library calls (functions within program libraries) 库函数

 2> su

 su root :切换到超级用户

sudo su 用户名 : 切换用户

exit 或 ctrl d: 退出

 3> sudo

 临时管理员权限,需要输入密码

 4> df命令

 df -Th

查看磁盘使用情况

补充: 1.挂载优盘时,出现u盘识别不出的现象

解决办法:

1)虚拟机->设置->usb控制器->兼容usb3.0

2)虚拟机->可移动设备->找到自己的u盘->连接

2.如果出现u盘类型不匹配的问题 sudo apt-get install exfat-fuse exfat-utils

 5> mount命令

 作用:文件系统的挂载

sudo mount -t 设备类型 设备名称 挂载点:挂载设备

sudo umount 挂载点 :卸载设备

注意:卸载时不要在挂载点卸载

 2》用户管理命令

 sudo adduser 用户名 : 添加用户

sudo deluser --remove-home 用户名 : 删除用户同时删除工作目录

 3》进程管理命令

 1> ps

进程 就是程序的一次执行过程,是动态的

ps -aux :显示当前系统中运行的进程(包含进程的状态)

ps -ef : 显示当前系统中运行的进程(包含进程的父进程号PPID)

 2> top

动态查看系统中运行的进程

shift > :向上翻页

shift < :向下翻页

q : 退出

修改优先级

PR = NI + 20

NI值范围 :-20~19,NI值越小优先级越高

sudo renice NI 值PID:改变正在运行进程的优先级

sudo nice -n NI值 启动进程的命令: 以指定的优先级启动进程

  • 11
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值