Linux基础和命令

Linux的哲学思想

优势

  1. 一切都是一个文件。(包括硬件,文本,二进制,源代 码)
  2. 系统中拥有小型,单一用途的程序。(一个程序只负责 做好自己的本职工作)
  3. 当遇到复杂任务,通过不同功能用途的程序组合起来 完成。 轻量级,一台服务 dhcp ip 数据库服务 网 页
  4. 避免令人困惑的用户界面就是没有复杂的图形界面。 ()我想怎么使用程序,win程序
  5. 连配置文件都存储在文本中,方便增删改查。
  6. 不在乎后缀名,有没有都无所谓,不是通过后缀名来 定义文件的类型。

基础知识

root #表示用户
localhost #主机名
~ #家目录

管理员用户

$ #普通用户
root #root的家目录
opt #opt目录

关机命令:
1、halt #立刻关机
2、poweroff #立刻关机
3、shutdown -h now #立刻关机(root用户 使用)
4、shutdown -h 10 #10分钟后自动关机

重启命令:
reboot
init 6
shutdown -r now

Linux命令

shell

shell的定义

Linux基础和命令

用户使用应用程序发布指令比如 (使用浏览器访问网页)

shell去通知操作系统需要进行什么样的操作(相当于解释层)
内核相当于操作系统去指挥硬件 硬件才能工作,否则无法交互

不同的shell环境

bash是linux里面默认的shell程序位于/bin/bash csh ksh 语言不同比如中文英文都是交流的语言

[root@localhost ~] # echo $SHELL //显示当前shell
/bin/bash
[root@localhost ~] # cat /etc/shells //显示当前系统所有使用的shell
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh
[root@localhost mnt]# sh 切换shell环境 sh-4.2# [root@localhost mnt]# pstree 查看使用过的shell环境 ├─sshd───sshd───bash───csh───bash───tcsh ───bash───pstree
├─systemd-journal
├─systemd-logind
├─systemd-udevd
├─tuned───4[{tuned}]
├─upowerd───2
[{upowerd}]
├─vmtoolsd───{vmtoolsd}
├─wpa_supplicant
└─xdg-permission-───2*[{xdg-permission-}]

shell与内、外部命令

(1) shell 分为内部命令和外部命令,一般先执行内部命令,hash 再执行外部命令

内部命令 外部命令 集成于Shell解释器程序内部 的一些特殊指令,也称为内 建(Built-in)指令 Linux系统中能够完成 特定功能的脚本文件 或二进制程序 属于Shell的一部分 属于Shell解释器程序 之外的命令 没有单独对应的系统文件 每个外部命令对应了 系统中的一个文件 自动载入内存,可以直接使 用 必须知道其对应的文 件位置,由Shell加载 后才能执行

(2)help命令可以查看内部命令

[root@localhost ~]# help cd
cd: cd [-L|[-P [-e]]] [dir]
Change the shell working directory.

Change the current directory to DIR. The default DIR is the value of the
HOME shell variable.

The variable CDPATH defines the search path for the directory containing
DIR. Alternative directory names in CDPATH are separated by a colon (:).

A null directory name is the same as the current directory. If DIR begins
with a slash (/), then CDPATH is not used.

If the directory is not found, and the shell option ‘cdable_vars’is set,
the word is assumed to be a variable name. If that variable has a value,
its value is used for DIR.

Options:
-L force symbolic links to be followed
-P use the physical directory structure without following symbolic
links
-e if the -P option is supplied, and the current working directory

cannot be determined successfully, exit with a non-zero status

The default is to follow symbolic links, as if ‘-L’ were specified.

Exit Status:
Returns 0 if the directory is changed, and if $PWD is set successfully when
-P is used; non-zero otherwise.

(3)可以使用type 命令来区分内外部命令

[root@localhost /] # type cd // 内嵌代表内部命令
cd 是 shell 内嵌
[root@test1 /] # type -a ls
ls 是 ‘ls –color=auto’ 的别名 //别 名代表外部命令
ls 是 /usr/bin/ls //外部命令会有程序路径
[root@localhost /]# whereis ls //whereis 可以查找命令具体的位置所在
ls: /usr/bin/ls
/usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz
[root@localhost ~]# type -a
echo echo 是 shell 内嵌
echo 是 /usr/bin/echo

外部命令存放于 echo $PATH 一个一个找,找到为 止,找不到就报无命令

[root@localhost ~]# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin :/usr/bin:/root/bin

外部命令使用过后会被记录在内存(缓存,但是会占用 内存,临时性的)加快读取速度

[root@localhost ~]# type useradd useradd 是 /usr/sbin/useradd [root@localhost ~]# useradd wu [root@localhost ~]# type useradd
useradd 已被hash (/usr/sbin/useradd)
[root@localhost ~]# hash //或者使用hash
hash 缓存

(4)开启或关闭内部命令

关闭:enable -n 内部命令

开启:enable 内部命令

[root@localhost opt]# enable -n cd
[root@localhost opt]# cd /mnt/
[root@localhost opt]#

(5)hash 缓存空间

选项 说明 -d

  • 在Linux 操作系统中,凡是在字符操作界面中输入能够完成特定操作和任务的字符串都可以称为命令。
  • 严格来说,命令通常只代表实现某一类功能的程序的名称。格式命令字 空格 [选项] 空格 [参数]解释命令字 选项 参数各自的意思及具体使用方法
  • 命令字 是整条命令中最关键的一部分,唯一确定。
  • 选项 短格式选项:使用”-“符号引导,通常是一个字母; 长格式选项:使用”–“符号引导,通常是完整的单词。
  • 参数 命令字的处理对象,可以是文件名、目录(路径)名或用户名等内容,个数可以是零到多个。 ;可以隔开命令 ,执行多个命令*编辑Linux命令行的辅助操作

快捷键 功能 Tab 键 自动补齐(两次可以显示所有选项) 反斜杠”\” 强制换行或转义 Ctrl+a 光标移到最前 Ctrl+e 光标移到最后 Ctrl+U 清空至行首不包括当前光标处的 字符 Ctrl+K 清空至行尾包括当前光标处的字符 Ctrl+w 从当前光标删除到开头 ALT+d 从当前光标删除末尾 Ctrl+l 清屏 Ctrl+c 取消本次命令编辑 Ctrl+s/Ctrl+q 锁屏/解锁 向上下箭头 回看执行过的命令 # 获得命令帮助 ## help

  • [ ]表示可选项
  • CAPS或<>表示可变化的数据
  • …表示一个列表可加多个
  • x|y|z 表示或的意思
  • -abc 是-a -b -c (有些命令选项有先后顺序)

只能查看内部命令的使用方法

[root@localhost ~]# help echo

内部命令查看帮助

echo: echo [-neE] [参数 …]
将参数写到标准输出。
在标准输出上显示 ARG 参数后跟一个换行。

选项:
-n 不要追加换行
-e 启用下列反斜杠转义的解释
-E 显式地抑制对于反斜杠转义的解释

‘echo’ 对下列反斜杠字符进行转义:
\a 警告(响铃)
\b 退格
\c 抑制更多的输出
\e 转义字符
\f 格式提供
\n 换行
\r 回车
\t 横向制表符
\v 纵向制表符
\ 反斜杠
\0nnn 以 NNN (八进制)为 ASCII 码的字 符。
NNN 可以是 0到3个八进制数字
\xHH 以 HH (十六进制)为值的八比特字 符。
HH可以是 一个或两个十六进制数字

退出状态:
返回成功除非有写错误发生。

–help

查看外部命令帮助

[root@localhost ~]# ls –help
[root@localhost dev]# useradd –help

man

man分九个章节默认打开第一章节

[root@localhost ~]# whatis ls
ls (1) – 列目录内容
1代表第一章手册
ls (1p) – list directory contents
1p 代表开发程序使用

[root@localhost ~]# whatis passwd //可以查看命令的章节
passwd (5) – (未知的主题)
sslpasswd (1ssl) – compute password hashes
passwd (1) – update user’s authentication tokens
[root@localhost ~]# man 5 passwd //查看第五章内容,第5章一般是配置文件格式详细解释
[root@localhost ~]# man 7 ascii
[root@localhost ~]# man 7 UTF-8
[root@localhost ~]# mandb //生成man数据库,man命令无效时
正在删除 /usr/share/man 里的旧数据库条目…

mandb: 警告:/usr/share/man/man8/fsck.fat.8.manpage-fix.gz:忽略错误的文件名
正在处理 /usr/share/man 下的手册页…

正在删除 /usr/share/man/hu 里的旧数据库条目…

正在删除 /usr/share/man/pl 里的旧数据库条目…

[root@localhost ~]# man man

该清单是一组用冒号分隔的欲查找的手册清单。此选项将覆盖 MANSECT 环境变量。
有些指令或程序可能有一个以上的主题,它们位于不同的区段中。因此,要查看较后的区 段,你可以在此指定 man
查找区段的顺序。具体区段划分如下所示:
区段1:用户指令
区段2:系统调用
区段3:程序库调用
区段4:设备
区段5:文件格式 shadow passwd fstab
区段6:游戏
区段7:杂项
区段8:系统指令
区段9:内核内部指令
区段n:Tcl或Tk指令

info

[root@localhost dev]# info ls

百度是最快解决方式不拘泥形式

Original: https://www.cnblogs.com/fengxia6/p/16697151.html
Author: 风夏呀
Title: Linux基础和命令

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/577780/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 每周一个linux命令(ping)

    基础环境 ping命令介绍 ping&#x547D;&#x4EE4;&#x4E3B;&#x8981;&#x7528;&#x6765;…

    Linux 2023年6月8日
    096
  • Linux命令1

    快捷键 1&#x3001;&#x6253;&#x5F00;&#x7EC8;&#x7AEF; ctrl+alt+t 2&#x3001;…

    Linux 2023年6月8日
    0114
  • PWN学习总结

    一、栈溢出原理 什么是栈溢出?栈溢出就是缓冲区溢出的一种。 由于缓冲区溢出而使得有用的存储单元被改写,往往会引发不可预料的后果。程序在运行过程中,为了临时存取数据的需要,一般都要分…

    Linux 2023年6月8日
    099
  • 搭建Redis三主三从集群

    Redis三主三从集群规划 10.0.128.19 使用端口 7000 700110.0.128.22 使用端口 7002 700310.0.128.23 使用端口 7004 70…

    Linux 2023年6月8日
    0113
  • muduo项目介绍

    在上一个集群聊天服务器项目中,我使用了 muduo作为网络库,然后主要实现了业务逻辑等,所以为了深入网络库的代码和实现,我跟着一位老师的代码去实现了 muduo库的基本原理和作用,…

    Linux 2023年6月13日
    0108
  • 【原创】Linux中断子系统(四)-Workqueue

    背景 Read the fucking source code! –By 鲁迅 A picture is worth a thousand words. –…

    Linux 2023年6月8日
    0106
  • 十二、启动流程

    启动流程介绍 现代计算机系统启动是硬件与软件复杂组合。从定义的端点开始,到拥有登录提示符的运行中系统,需要大量的硬件和软件配合工作。以下列表从较高层面概述了启动系统时所涉及的任务。…

    Linux 2023年6月7日
    0104
  • 详解 Serverless 架构的 6 大应用场景

    Serverless 架构将成为未来云计算领域重要的技术架构,将会被更多的业务所采纳。进一步深究,Serverless 架构在什么场景下有优秀的表现,在什么场景下可能表现得并不是很…

    Linux 2023年6月8日
    098
  • IDEA快捷键总结

    一、关于IDEA工具的快捷键 1.1、字体设置  file –> settings –> 输入font –> 设置字体样式以及字号大小​1.1、快速生成ma…

    Linux 2023年6月7日
    088
  • .NET面试经典三问:什么是.NET?什么是.NET Framework?什么是.NET Core?

    什么是.NET?什么是.NET Framework? 本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先从类型系统开始讲起,我将通过跨语言操作这个例子来逐渐引入一系列.NE…

    Linux 2023年6月13日
    089
  • 缓存提升性能的关键性手段

    提高「性能」的主要方式是优化,而优化的其中一个主要手段就是添加缓存! 在软件工程里有这么一句话:「没有银弹」!就是说由于软件工程的复杂性,没有任何一种技术或方法能解决所有问题!软件…

    Linux 2023年6月14日
    096
  • mybatis-plus详细讲解

    本文笔记都是观看狂神老师视频手敲的,视频地址:https://www.bilibili.com/video/BV17E411N7KN 学java后端的都可以去看一下,从基础到架构很…

    Linux 2023年6月7日
    0126
  • 【证券从业】金融基础知识-第二章 中国金融体系与多层次资本市场02

    注1:后续学习并整理到第八章,全书完结后再合并成一个笔记进行源文件分享 注2:本章内容巨多,大约分为两篇文章记录消化 posted @2022-05-31 22:14 陈景中 阅读…

    Linux 2023年6月13日
    093
  • haproxy服务部署

    haproxy haproxy 一、haproyx是什么 二、负载均衡类型 三、部署haproxy 1.源码部署haproxy 2.Haproxy搭建http负载均衡 一、hapr…

    Linux 2023年6月6日
    0116
  • Redis in Action 文章投票

    首先在 Linux 开启 Redis 服务: 如果显示: 说明 Redis 服务已经开启,端口号 6379 redis.php init_data.php 用于添加案例的数据 vo…

    Linux 2023年5月28日
    0116
  • Kubenertes-实战入门

    实战入门 Namespace Namespace是kubernetes系统中的一种非常重要资源,它的主要作用是用来实现 多套环境的资源隔离。 默认情况下,kubernetes集群中…

    Linux 2023年6月13日
    095
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球