当前位置: 首页 > news >正文

Ubuntu指令学习(个人记录、偶尔更新)

Ubuntu指令学习

  • 0、一点常用指令列表
  • 一、Ubuntu下复制与移动,cp/mv
  • 二、Ubuntu下echo 与 重定向>,>>
  • 三、Ubuntu下chmod,用户权限
  • 四、Ubuntu下的tar打包,gzip压缩
  • 五、Ubuntu(22.04)下系统语言为中文,切换主目录文件名为英文。
  • 六、Ubuntu下GitHub访问
  • 七、Ubuntu使用sudo apt install安装时,提示正在等待缓存锁:无法获得锁 /var/lib/dpkg/lock-frontend。锁正由进程 xxxx(unattended--upgr)持有的问题。
  • 八、Ubuntu下执行脚本
  • 九、Ubuntu下的环境变量

0、一点常用指令列表

指令解释
man命令 / 命令 --help 查看命令的使用方法
ls查看当前文件夹下的内容, ls -a为看到所有文件包括隐藏文件, ls 1* 为查找1开 头所有文件,ls 1? 为查找一个以1开头的二字符文件名文件,?为一个字符
pwd查看当前所在的文件夹,定位所在位置
touch如果文件不存在就新建文件,一般为文本,touch .1.txt 为创建隐藏文件
gedit文本编辑器,也可以用于创建文本,gedit 1.txt
mkdir创建文件夹
rm删除文件, 加上 -f为强制删除,-r为递归删除; rm删文件不可恢复,可以sudo apt install trash-cli,再trash 文件 可放入回收站
clear清屏
tree以树形结构显示文件路径下的文件
cat查看文件内容如cat 1.txt , cat -b 1.txt 则能知道文本有多少行
grep搜索文件中的文本,-n 匹配行及行号,-i忽略大小写,如grep -n abc 1.txt, 这 个命令可以很好在无图形界面情况下进行搜索
管道,也就是将丨左边命令输出的内容作为右边的输入再执行结果,比如 ls 丨 grep abc 也就是先查看当前路径的文件然后搜索文件名中含abc的项
shutdown一分钟后关机, shutdown -r一分钟后重启,reboot为立刻重启, shutdown -c 为取消之前的关机计划,shutdown now 为立刻关机
ifconfig查看网卡配置, ping 检测与另一台主机的连接
passwd修改用户密码,一般忘记密码时会用,不过还有别的步骤
su进入管理员模式,su root
date查询系统当前时间,cal为查看当前月的日历,cal -y查看一年的日历
df显示磁盘剩余空间,df -h则可更可视化查看磁盘空间,比如以G,MB单位,du -h 则查看当前目录下文件的大小
find查找文件的路径,find /usr/bin/ -name ".py"为查找某路径下的py文件
ln -s源文件(用绝对路径) 链接后文件(用绝对路径) 创建软链接,相当于windows下的快捷方式

一、Ubuntu下复制与移动,cp/mv

cp 源文件路径 目标路径,如果要复制到根目录下要赋予管理员权限,使用sudo,一般配置环境的时候需要在根目录中移动文件。文件路径可以灵活修改,比如当前所在位置就已经三目标路径了,那cp到的目标路径可以用 .

cp ~/Desktop/1.txt ~/Pictures/

如果防止覆盖相同文件名的文件,可以加 -i。
复制的同时可以改名,如下

cp ~/Desktop/1.txt ~/Pictures/2.txt

mv和cp一样的使用方法,只不过源路径的文件无了。不过可以用move在同路径下将一个文件重命名,也只是覆盖而以。

二、Ubuntu下echo 与 重定向>,>>

echo 本身只是输出以下输入的东西,一般与重定向使用,配置环境时多与bashrc互动。
touch创建了一个空的文本,echo与重定向则可以创建有内容的文本,>会覆盖原有内容,>>则是在末尾的新行追加内容:

echo hello > 3.txt

>与>>可以单独使用,比如把其他指令得到的内容加到文本中:

tree >> 3.txt
或
ls >> 3.txt

在这里插入图片描述
在这里插入图片描述

三、Ubuntu下chmod,用户权限

+为赋予权限,-为删除权限,r为可读权限,w为可写权限,x为可执行权限。

chmod +/-rwx 文件名或目录名

在这里插入图片描述
在这里插入图片描述
三个数字分别给系统拥有者,组,其他用户的权限,4为r,2为w,1为x,若赋予完全的权限则为rwx之和即7,只赋予读写权限则为rw之和为6,其余类似,一般使用当前自己用户就是第一个数字就行。

chmod 755 文件名或目录名

四、Ubuntu下的tar打包,gzip压缩

Linux的压缩包主要为tar.gz,tar指是由tar打包的,gz指由gzip压缩的,tar只为打包文件,tar.gz为压缩文件,大小更小。
tar只负责打包,c为生成档案文件并创建打包文件,x为解开档案文件,v为列出解档案的详细过程并显示进度,f为指定档案名称其后一定为tar文件所以f常放选项最后。

# 打包文件
tar -cvf 打包文件.tar 被打包的文件或路径
# 解包
tar -xvf 打包文件.tar

加个-z即为调用gzip了。

# 压缩文件
tar -zcvf 打包文件.tar.gz 被压缩的文件或路径
# 解压缩文件,后面的目标路径可不用
tar -zxvf 打包文件.tar.gz -C 目标路径

此外还有对bzip2的压缩包的操作,用j来替代。

# 压缩文件
tar -jcvf 打包文件.tar.bz2 被压缩的文件或路径
# 解压缩文件,后面的目标路径可不用
tar -jxvf 打包文件.tar.bz2 -C 目标路径

五、Ubuntu(22.04)下系统语言为中文,切换主目录文件名为英文。

因为做项目的需求,主目录下的文件最好换成英文。
在这里插入图片描述
通过下面两条命令即可转换,en_US是英语的编号。接着重启就行。

export LANG=en_US
xdg-user-dirs-gtk-update

会弹出下面这个框,更新就好了。zh_CN是中文的代号。

在这里插入图片描述
接下来去看看源文件,在 /etc/default/ 下的locale就是语言相关的了
在这里插入图片描述
我们也已通过修改locale文件来修改中英文方式,上边那行LANG是修改主目录下的文件夹名字的语言的(可能也有其他地方被修改,暂时我没发现),下面那行LANGUAGE是修改整个系统的语言的,所以只需把LANG中的zh_CN改成en_US保存,就行。接着也要重启。

xdg-user-dirs-gtk-update
reboot

在这里插入图片描述

六、Ubuntu下GitHub访问

git clone https://ghproxy.com/(后面跟网址) 

在这里插入图片描述

七、Ubuntu使用sudo apt install安装时,提示正在等待缓存锁:无法获得锁 /var/lib/dpkg/lock-frontend。锁正由进程 xxxx(unattended–upgr)持有的问题。

这个问题可以归结为操作系统中的死锁问题,死锁定义如下:
死锁(Deadlock):是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。称此时系统处于死锁状态或系统产生了死锁。称这些永远在互相等待的进程为死锁进程。所占用的资源或者需要它们进行某种合作的其它进程就会相继陷入死锁,最终可能导致整个系统处于瘫痪状态。
在ubuntu系统终端下,用apt-get install 安装软件的时候,如果在未完成下载的情况下将终端中断,此时 apt-get进程可能没有结束。如果再次运行apt-get install 命令安装,可能会发生下面的提示:

无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)
无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?

解决办法:强制解锁,命令:

sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
sudo rm /var/lib/dpkg/lock-frontend
指令解释
ps查看当前系统的进程
top实时监控系统中内存占有高的进程,使用q退出动态过程
kill杀死进程,kill -9为强制杀死进程,如下图中PID为进程代号,60229为新建的 终端,kill了60229也就是关闭了那个终端,最好别kill掉root的进程

在这里插入图片描述

八、Ubuntu下执行脚本

脚本程序如shell脚本以.sh为后缀,python脚本以.py为后缀,perl脚本以.pl为后缀,执行脚本可以在终端中方便运行程序。这几种解释器的路径都在/usr/bin/下,所以一般写他们的脚本的时候会在第一行加上#!/usr/bin/python,#!/usr/bin/sh, #!/usr/bin/perl 。
执行脚本时,对.sh文件,用shell的语法。
在这里插入图片描述
.sh文件可以用下面四种方法执行。

sh 1.sh
bash 1.sh
source 1.sh
./1.sh		# 必须chmod添加可执行权限才能

对python脚本,就 python 1.py 与 ./1.py 执行python脚本。
在这里插入图片描述

九、Ubuntu下的环境变量

ubuntu以shell脚本为基础,最基本的使用为先定义一个变量如 VALUE=value , 接着就使用这个变量如 ${VALUE} , 若后面有定界符则可以不用{}。
在这里插入图片描述
直接在终端中加入环境变量,生效方法为立即生效,有效期限是临时改变,只能在当前的终端窗口中有效,当前窗口关闭后就会恢复原有的path配置,用户局限是仅对当前用户。

export OUTPUT=/usr/local

在这里插入图片描述
下面这样为把环境变量加到 PATH中。

export OUTPUT=$PATH:/usr/local

用户环境变量定义在~/.profile中,在其中加入环境变量就可以不局限于一个终端中,一般加在其末尾即可,需要重启才能生效。
在这里插入图片描述
用户环境变量还可以定义在~/.bashrc中,输入“source ~/.bashrc”命令,立即生效,有效期限为永久有效,用户局限是仅对当前用户。

sudo gedit ~/.bashrc
export OUTPUT=$PATH:/usr/local

而系统环境变量则是在/etc/profile.d/下建立的shell脚本,一般不直接修改profile,而是在目录下创建sh脚本,定义环境变量然后重启生效,这样无论是哪个用户登陆都可以有这个环境变量了。

相关文章:

Ubuntu指令学习(个人记录、偶尔更新)

Ubuntu指令学习 0、一点常用指令列表一、Ubuntu下复制与移动,cp/mv二、Ubuntu下echo 与 重定向>,>>三、Ubuntu下chmod,用户权限四、Ubuntu下的tar打包,gzip压缩五、Ubuntu(22.04)下系统语言为中文,切换主目录文件名为英文。六、Ubun…...

Visual Studio 进行单元测试【入门】

摘要:在软件开发中,单元测试是一种重要的实践,通过验证代码的正确性,帮助开发者提高代码质量。本文将介绍如何在VisualStudio中进行单元测试,包括创建测试项目、编写测试代码、运行测试以及查看结果。 1. 什么是单元测…...

【经验分享】Linux 系统安装后内核参数优化

在 Linux 系统安装后,进行内核优化有助于提升系统的性能、稳定性和安全性。以下是一些常见的内核优化操作: 修改/etc/sysctl.conf 文件 执行sysctl -p使配置生效。 kernel.shmmax 135185569792 kernel.shmall 4294967296 fs.aio-max-nr 3145728 fs.fi…...

linux统计文件夹下有多少个.rst文件行数小于4行

您可以使用 find 命令结合 wc 命令来统计文件夹下 .rst 文件行数小于 4 行的文件数量。以下是一个具体的命令示例&#xff1a; find /path/to/directory -name "*.rst" -type f -exec wc -l {} | awk $1 < 4 | wc -l解释&#xff1a; find /path/to/directory …...

使用开源项目xxl-cache构建多级缓存

xxl-cache简介 官网地址&#xff1a;https://www.xuxueli.com/xxl-cache/ 概述 XXL-CACHE 是一个 多级缓存框架&#xff0c;高效组合本地缓存和分布式缓存(RedisCaffeine)&#xff0c;支持“多级缓存、一致性保障、TTL、Category隔离、防穿透”等能力&#xff1b;拥有“高性…...

LVDS接口总结--(5)IDELAY3仿真

仿真参考资料如下&#xff1a; https://zhuanlan.zhihu.com/p/386057087 timescale 1 ns/1 ps module tb_idelay3_ctrl();parameter REF_CLK 2.5 ; // 400MHzparameter DIN_CLK 3.3 ; // 300MHzreg ref_clk ;reg …...

Vue3(1)

一.create-vue // new Vue() 创建一个应用实例 > createApp() // createRouter() createStore() // 将创建实例进行了封装&#xff0c;保证每个实例的独立封闭性import { createApp } from vue import App from ./App.vue// mount 设置挂载点 #app (id为app的盒子) createA…...

玩转适配器模式

文章目录 解决方案现实的举例适用场景实现方式适配器模式优缺点优点:缺点:适配器模式可比上一篇的工厂模式好理解多了,工厂模式要具有抽象的思维。这个适配器模式,正如字面意思,就是要去适配某一件物品。 假如你正在开发一款股票市场监测程序, 它会从不同来源下载 XML 格…...

2.11寒假作业

web&#xff1a;[SWPUCTF 2022 新生赛]js_sign 打开环境是这样的&#xff0c;随便输入进行看看 提示错误&#xff0c;看源码其中的js代码 这个代码很容易理解&#xff0c;要让输入的内容等于对应的字符串&#xff0c;显然直接复制粘贴是错的 这串字符看起来像是base64加密&…...

untiy 冰面与地面,物理材质的影响

效果 WeChat_20250211165601...

视频编解码标准中的 Profile 和 Level

视频编解码标准中的 Profile 和 Level 在视频编码标准(如 H.264/AVC、HEVC/H.265、H.266/VVC、AV1)中,Profile(配置文件) 和 Level(级别) 是两个重要的概念,它们用于定义编码器和解码器支持的特性、功能以及视频质量与编码效率之间的权衡。 Profile(配置文件) Pro…...

通用的将jar制作成docker镜像sh脚本

通用的将jar制作成docker镜像sh脚本 为了在将 JAR 制作成 Docker 镜像的过程中创建日志目录&#xff0c;可以对之前的脚本进行扩展。以下是改进后的脚本&#xff0c;会在镜像构建时在容器内创建日志目录&#xff0c;并将日志文件挂载到该目录下。 在生成的 Dockerfile 中添加…...

AUTOGPT:基于GPT模型开发的实验性开源应用程序; 目标设定与分解 ;;自主思考与决策 ;;信息交互与执行

目录 AUTOGPT是一款基于GPT模型开发的实验性开源应用程序目标设定与分解自主思考与决策信息交互与执行AUTOGPT是一款基于GPT模型开发的实验性开源应用程序 目标设定与分解 自主思考与决策 信息交互与执行 AUTOGPT是一款基于GPT模型开发的实验性开源应用程序,它能让大语言模…...

异步线程中使用RestTemplate注入空指针解决

在某种情况下&#xff0c;调用第三方或者jar文件中封装的httpClient时&#xff0c;上层调用采用异步线程调用&#xff0c;导致底层的RestTemplate注入为空&#xff0c;无法正常调用&#xff0c;需要强制将spring的上下文绑定到异步线程中。 强制传递 Spring 上下文到异步线程 …...

2024BaseCTF_week4_web上

继续&#xff01;冲冲冲 目录 圣钥之战1.0 nodejs 原型 原型链 原型链污染 回到题目 flag直接读取不就行了&#xff1f; 圣钥之战1.0 from flask import Flask,request import jsonapp Flask(__name__)def merge(src, dst):for k, v in src.items():if hasattr(dst, __geti…...

说一下 jvm 有哪些垃圾回收器?

JVM 垃圾回收器对比表 垃圾回收器类型工作方式回收方式停顿时间适用场景优点缺点常见问题常见配置Serial GC串行单线程&#xff0c;STW年轻代&#xff1a;复制算法 老年代&#xff1a;标记-整理长小内存、单核CPU&#xff0c;如桌面应用或嵌入式设备简单高效&#xff0c;适用于…...

react国际化配置react-i18next详解

react PC端项目构建TS&#xff0c;react18.2.0antdviteaxiosreduxsassts 完整版代码下载&#xff1a; https://download.csdn.net/download/randy521520/88922625 react PC端项目构建&#xff0c;react18.2.0antdviteaxiosreduxsass完整版代码下载&#xff1a; https://downloa…...

Java并发编程——上下文切换、死锁、资源限制

文章目录 1.1上下文切换&#xff08;1&#xff09;上下文切换的概念&#xff08;2&#xff09;多线程一定比单线程快吗&#xff1f;&#xff08;3&#xff09;测量上下文切换如何减少上下文切换 1.2 死锁&#xff08;1&#xff09;死锁的定义&#xff08;2&#xff09;死锁产生…...

MS08067练武场--WP

免责声明&#xff1a;本文仅用于学习和研究目的&#xff0c;不鼓励或支持任何非法活动。所有技术内容仅供个人技术提升使用&#xff0c;未经授权不得用于攻击、侵犯或破坏他人系统。我们不对因使用本文内容而引起的任何法律责任或损失承担责任。 注&#xff1a;此文章为快速通关…...

ubuntu文件同步

1. 使用 rsync 同步文件 rsync 是一个常用的文件同步工具&#xff0c;可以在本地或远程系统之间同步文件和目录。 基本用法&#xff1a; rsync -avz /源目录/ 目标目录/-a&#xff1a;归档模式&#xff0c;保留文件属性。-v&#xff1a;显示详细输出。-z&#xff1a;压缩传输…...

19c补丁后oracle属主变化,导致不能识别磁盘组

补丁后服务器重启&#xff0c;数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后&#xff0c;存在与用户组权限相关的问题。具体表现为&#xff0c;Oracle 实例的运行用户&#xff08;oracle&#xff09;和集…...

Cursor实现用excel数据填充word模版的方法

cursor主页&#xff1a;https://www.cursor.com/ 任务目标&#xff1a;把excel格式的数据里的单元格&#xff0c;按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例&#xff0c;…...

【JavaEE】-- HTTP

1. HTTP是什么&#xff1f; HTTP&#xff08;全称为"超文本传输协议"&#xff09;是一种应用非常广泛的应用层协议&#xff0c;HTTP是基于TCP协议的一种应用层协议。 应用层协议&#xff1a;是计算机网络协议栈中最高层的协议&#xff0c;它定义了运行在不同主机上…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具

作者&#xff1a;来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗&#xff1f;了解下一期 Elasticsearch Engineer 培训的时间吧&#xff01; Elasticsearch 拥有众多新功能&#xff0c;助你为自己…...

Oracle查询表空间大小

1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

蓝桥杯 2024 15届国赛 A组 儿童节快乐

P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡&#xff0c;轻快的音乐在耳边持续回荡&#xff0c;小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下&#xff0c;六一来了。 今天是六一儿童节&#xff0c;小蓝老师为了让大家在节…...

连锁超市冷库节能解决方案:如何实现超市降本增效

在连锁超市冷库运营中&#xff0c;高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术&#xff0c;实现年省电费15%-60%&#xff0c;且不改动原有装备、安装快捷、…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

蓝桥杯3498 01串的熵

问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798&#xff0c; 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...