首页 > 系统相关 >Linux 学习笔记

Linux 学习笔记

时间:2023-12-19 21:12:30浏览次数:39  
标签:文件 ctrl 用户 笔记 学习 命令 file Linux options

文件及权限
与用户相关的文件
linux下一切皆文件:一切设备抽象的进程,运行数据甚至CPU等都可以在文件系统中找到相关的文件

/etc/passwd

/etc/group

ect:全局配置文件夹

其他命令:usermod 、userdel 、id

目录创建:mkdir 文件名目录

空白文件创建:touch 文件名

浏览文件
文件系统:树形结构

切换目录:使用cd,如果有GUI也可使用

查看目录内容:可以使用ls命令查看目录下的文件

盘符:Linux只有一棵树,一个根目录

隐藏文件
隐藏文件都是以“.”开头的

显示隐藏文件:ls -a

查看文件:ls -la

七种基本文件
-:regular file 普通文件
(文本(ascll编码的),二进制,数据)

查看文件登录信息:ls -l 文件名

查看文件属性:file 文件名

数据文件读取:last -f 文件名

d:directory 目录

l:link 链接

b:block 块设备 存储数据以供系统存取的接口设备,就是硬盘

c:character 字符设备 串口设备,键盘,鼠标等

s: socket 套接字

p: pipe 管道

普通文件类型
纯文本文件 使用ASCII编码

二进制文件 系统中的可执行文件,不包括脚本文件

数据格式文件 例如:/var/log/wtmp

文件权限
命令 :ls -al 可查看权限/ls -lh、ls -lha 可查看权限却其中添加了单位

1、每个文件都有一个拥有用户User与拥有组Group

2、文件User可以不在Group中

3、除User和Group外,其余用户都是Others

4、对于不同的身份,对文件有各自不同的权限操作

5、权限有r、w、x三种权限分别表示可读、可写、可执行

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q2nOaZ0v-1678184928883)(C:\Users\86166\AppData\Roaming\Typora\typora-user-images\image-20210616212400670.png)]

有关命令:

chmod
#更改文件权限

chmod a+x file #给file文件的ugo都赋予执行的权限

chmod o-x file #将file文件o减去执行权限

chmod 755 file #设置file文件的权限为rwxr-xr-x

chmod u=rwx,go=rx file #设置file文件的权限为rwxr-xr-x

chown
#更改文件所属用户

chown mengdi:zys_ergou file #修改file的所属用户memgdi,所属组为zys_ergou

chown -R memgdi:zys_ergou directory #修改目录directory及目录下的所有文件的所属用户是mengdi,所属组为zys_ergou

chown mengdi file #修改file的所属用户为mengdi

chgrp
#更改文件所属组

chgrp root file #修改file所属的组为root

初始用户
root和普通用户
root:超级管理员。root拥有系统的完全控制权,所以在使用Linux系统时,需要慎重使用root用户,更多的自由与权限同样也意味着更大的风险。

普通用户:普通用户拥有的权限就没有root用户那么大了,它只能做系统允许做的事。普通用户可以执行大部分的命令,但是root专有的命令却不能执行。

sudo:切换为超级管理员模式,拥有超级管理员权限

切换用户:su - username

修改密码:passwd命令修改

退出用户:exit或logout退出用户,ctrl+d

新建用户:useradd

家目录:用户也拥有自己的家目录

组:用户也有组的概念(id)

zsh环境
安装
sudo apt update

sudo apt install zsh

默认修改解释器修改

chsh -s /bin/zsh

配置文件
~/.zshrc /etc/zshrc

~/.zlogin /etc/zlogin

~/.zlogout /etc/zlogout

~/.zprofile /etc/zprofile

远程连接云主机:
Unix/Linux:使用ssh进行远程Linux

连接命令 :ssh 本地名字 + @ + IP地址

命令别名:alias x = “ssh IP地址”

隐藏文件:. zsh rc

免密登录
免密登录原理:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qMauvyP7-1678184928884)(C:\Users\86166\AppData\Roaming\Typora\typora-user-images\image-20210614215644389.png)]

手动:拷贝公钥到认证文件

自动:ssh-copy-id(公钥发送到authorized_keys)

自动有关流程命令:

ssh-keygen//生成密钥

ssh-copy-id + 用户名@主机名//公钥复制到远程云主机

//

scp 文件名 用户名@主机名:目的位置 //从本地拷贝到远程

scp 用户名@主机名:文件名 目的位置//从远程位置拷贝文件到本地

修改密码命令:passwd

命令行操作
更新
source 目录

移动一个字符
向后 ctrl+b

向前 ctrl+f

移动光标
移动至行首 ctrl+a

移动至行尾 ctrl+e

删除操作
向后删除光标所在字符 ctrl+d

删除至行尾巴 ctrl+k

向前删除一个单词 ctrl+w

清空整行 ctrl+u

查找
ctrl+s 向前查找

ctrl+r 向后查找

跳转目录
显示历史查找目录 ,按 d ,然后根标号按数字可跳转到需要的历史目录

别名
打印别名:alias

使某种类型文件名规定操作:alias -s 文件类型(后缀)= 命令

如alias -s c=vim,下次在终端直接输入a.c即可打开a.c

通配符(重点)
?:代表单个字符

*:代表几个任意字符

[charlist]:匹配charlist中任意单一字符

[^charlist]:匹配除charlist中的任意单一字符

[c1-c2]:匹配字母或数字c1到c2之间任意单一字符

(string1|string2|string3):匹配其中一个字符

< num1-num2 > :匹配任何在num1到num2之间的数字。缺省num1表示从0开始,缺省num2表示到无穷尽

任务管理(重点)
&:加在整条命令后面表示后台执行

;:加在命令中间表示顺序执行

&&:连续两个命令表示“与”

||:连续两个命令表示“或”

`` :命令中如果包含另一个命令,用 ’ '包括的命令将优先执行

ctrl+z:命令挂起

bg:将挂起的命令后台执行

fg:将挂起的命令或后台执行的命令,变为前台运行

jobs:查看后台执行的和挂起的任务及任务编号

重定向(重点)
“>”:重定向符号,从命令到文件的重定向

“>>”:追加符号,从命令到文件的追加

“<”:重定向符号,从文件到命令的重定向

“<<”:表示命令要的输入不是从文件中来着,而是从后面的代码段中来,当输入<<后面的字符串结束代码段中输入,如./a.out<< haha > a.txt,到输入haha结束

管道
连续操作命令

创建管道:mkfifo 管道名

|:匿名管道,将上一个命令的标准输出作为下一个命令的标准输入

转义符
\:反斜杠,转义,去除其后紧跟的元字符或通配符的特殊意义

’ ‘:硬转义,硬引用,其内部所有的shell元字符,通配符都会被关掉。注意,硬转义中不允许出现 ’ ‘

” “:软转义,软引用,其内部只允许出现特定的shell元字符:$用于变量的替换,`用于命令替换,\用于转义单个字符

Linux系统信息的获取
uptime
打印系统运行时长和平均负载(平均负载:单位时间内,系统处于【可运行状态R】或【不可中断状态D】的平均进程个数。也就是进程平均活跃数)

grammer:uptime [options]

options:

-n:以漂亮的格式显示时间

-s:系统启动的时间

-V:输出版本信息

w
当前用户列表及正在执行的任务

grammer: w[options]

options:

-h :不打印头信息

-s :使用短输出格式

-f :切换显示FROM项,默认显示

who
显示当前登录系统的用户信息

grammer:who[options]…[FILE | ARG1 ARG2]

options:

-H:显示各栏的标题信息列

-u:显示空置时间

-q:只显示登入系统的用户名称和总人数

whoami
打印当前有效的用户名称

last
显示用户最近登录信息

lastlog:打印每个账号的最近登录时间

grammer:last[options] [< username >…] [< tty>…]

options:

-f< file>:指定记录文件

-n< num>:指定输出记录

-x:显示系统关机,重新关机等信息

uname
打印当前系统信息

grammer:uname [options]

options:

-a:全部信息

-s:内核名字

-n:网络主机的名称

-r:系统发行编号

-v:os版本与时间

-m:主机类型

-p:处理器类型

-i:硬件平台

-o:操作系统名称

date
显示或设置系统时间与日期

grammer:date [options]…[+FORMAT]

options:

-d”string”:显示字符串所指的日期

-s“string”:设置时间

-u:显示GMT(如果是CST的情况下)

< +FORMAT>:显示使用的日期格式

cal
显示日历

write
给其他用户发送信息

grammer:write user [tty]

如果不想接受信息:mesg n

wall

给其他登录用户广播信息

grammar:wall “message”

标签:文件,ctrl,用户,笔记,学习,命令,file,Linux,options
From: https://www.cnblogs.com/yumisama/p/17914731.html

相关文章

  • MAUI开发笔记(二)
    今天试了一下,在MAUI上调用WEBAPI。经常一番努力,终于调用成功。不过这里面还是有很多的坑。MAUI分了好几个平台,一般来说,最容易成功的是Windows平台。坑1:HttpClient的方法总体来说,其实是用HttpClient来调用。但是HttpClient的方法使用上,也有坑。最开始我使用的是下面的一些接......
  • 3-5年Android程序员的学习计划和职业规划
    前言对于已经在职场中摸爬滚打了3-5年的程序员来说,已经具备了一定的工作经验,掌握了一些专业知识,对于工作中的各种问题和挑战已经有了一定的解决方案。但是,随着科技的不断进步,行业竞争的不断加剧,不能一味地依靠过去的经验和知识,更要时刻保持学习的心态,持续学习新技术,积累新经验,以便......
  • 分享一个linux服务器迁移文件脚本
    #!/bin/bash#定义源和目标服务器SRC_SERVER=""DEST_SERVER="[email protected]"#定义源和目标目录SRC_DIR="/home"DEST_DIR="/home"#定义rsync命令选项1500是1500kbRSYNC_OPTS="-avz--partial--progress--delete--bwlimit=1500"#......
  • 阅读笔记7
    《代码大全》2介绍了软件构建的本质和复杂性。软件开发既是一门艺术,又是一门工程学科,需要在实践中不断改进。接着讲述了在软件构建之前的前期准备活动,包括需求分析、定义解决方案和设计架构等,说明软件开发过程中对需求的分析和解决方案的设计是至关重要的环节。在软件质量和编码实......
  • opencv图像处理机器学习真实项目教程(python实现)1计算机视觉简介
    1计算机视觉简介欢迎来到计算机视觉的世界。本书将带您踏上令人兴奋且快速发展的计算机视觉和图像处理世界的旅程。本书首先介绍计算机视觉和OpenCV库。然后,我们将继续介绍本课程的基本库和所需的环境设置。主要内容:计算机视觉简介计算机视觉的应用PythonOpenCVOpenCV......
  • 刷题笔记
    1.有效的括号_20题目描述思路利用栈。按顺序遍历,遇到左括号直接入栈;遇到右括号,则与栈顶元素进行匹配,如果栈顶元素为空或者与栈顶元素不匹配,则返回false。遍历结束如果栈非空,则说明还有左括号未被匹配,返回false。复杂度时间复杂度O(n):遍历一遍字符串。空间复杂的O(n):栈使......
  • mysql笔记
    MySQL数据库B站资源网盘资源sql数据库提取码:mmmmDB、DBMS、SQL的关系DB:Database,数据库,数据库在硬盘上以文件的形式存在。DBMS:DatabaseManagementSystem,数据库管理系统,如:MySQL,Oracle,DB2,Sybase,SqlServer等。SQL:StructureQueryLanguage,结构化查询语言,是一门标准通用的......
  • 阅读笔记6
    永远以解决问题为导向,而不是仅仅完成任务。从最低级的写好一个功能,到给具体的需求排优先级,甚至到明确真正的需求,到调整开发节奏,一切都由实际的需求和开发能力决定,最终的目的只有一个,那就是解决真正的问题;把程序员当人看,不仅仅是把其他同事当人看,也要把自己当人看。人是会出错的,团......
  • 阅读笔记5
    《代码大全2》的前两章主要介绍了软件构建的基本概念、原则和流程,使我理解和应用代码的意义和方法产生了深刻的影响。在第一章中,作者强调了代码的重要性,并指出编程的目标是生成可执行代码。并通过一系列实例阐述了编程过程中的关键要素,如可读性、可维护性和可测试性。在第二章中......
  • 秦疆的Java课程笔记:78 异常 捕获和抛出异常
    异常处理五个关键词:try,catch,finally,throw,throws写一个会出错的代码:publicclassTest1{publicstaticvoidmain(String[]args){inta=1;intb=0;System.out.println(a/b);}}====运行报错====Exceptionint......