python day 9,10,11: 学Linux

Python(day3):Python3 安装与环境搭建 Python3 最新源码,二进制文档,新闻资讯等可以在 Python 的官网查看到:你可以在以下链接中下载 Python 的文档,你可以下载 HTML、PDF 和 PostScript 等格式的文档。Python 已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。您需要下载适用于您使用平台的二进制代码,然后安装 Python。如果您平台的二进制代码是不可用的,你需要使用C编译器手动编译源代码。编译的源代码,功能上有更多的选择性, 为 Python 安装提供了更多的灵活性。 阅读详情

Linux 目录结构

. 当前目录

.. 当前目录的上一级目录

~:家目录,是/home下相应用户的用户名显示的目录

/ :所有根的目录

/boot : 配置文件,内核和其他启动时所需文件,没它操作系统启动不起来

/etc :放置系统相关配置文件

        /etc/passwd 存储用户账户信息

        /etc/shadow 账户密码储存在这里(里面是影子化的密码文件,在里面看到的密码是乱码,被加密了)

/home :放置普通用户的目录

/mnt :硬盘上手动挂载(把硬盘链接在系统上)的文件系统,默认是空的

/media :自动挂载的硬盘分区以及类似CD及数码相机等可移动介质

/opt :默认是空的,存放一些可选程序,例如一些程序的测试版本

/root :管理员(根用户)目录

/bin : 常用命令文件存放的目录

/sbin:系统管理命令存放目录

/tmp:临时存放目录,存放的文件定期删除

/usr:存放不适合放在/bin或/etc目录下的额外工具,比如说游戏、打印工具等。其中

        /usr/bin目录用于存放程序

        /user/share用于存放一些共享数据

        /usr/lib用于存放那些不能直接运行的,但是许多程序运行所必须的一些函数库文件

/var:存放那些经常被修改的文件,例如各种日志和数据文件

        /var/log日志文件

/lost+found:一般都是空的,碰到断电时或者非正常关机后,有些文件就临时存放在这

/dev:存放设备文件,例如硬盘,U盘

linux操作系统将所有的设备都看作文件,

它将整个计算机的资源都整合成一个大的文件目录。

我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的目录上,

然后通过访问这个目录来访问存储设备。

语言环境

查看是否安装了中文

locale -a

安装软件

apt

注意,下面的apt命令是用于执行软件安装相关的,sudo命令是启用管理员身份

  • 列出所有可更新的软件清单命令:sudo apt update

  • 升级软件包:sudo apt upgrade

    列出可更新的软件包及版本信息:apt list --upgradeable

    升级软件包,升级前先删除需要更新软件包:sudo apt full-upgrade

  • 安装指定的软件命令:sudo apt install <package_name>

    安装多个软件包:sudo apt install <package_1> <package_2> <package_3>

  • 更新指定的软件命令:sudo apt update <package_name>

  • 显示软件包具体信息,例如:版本号,安装大小,依赖关系等等:sudo apt show <package_name>

  • 删除软件包命令:sudo apt remove <package_name>

  • 清理不再使用的依赖和库文件: sudo apt autoremove

  • 移除软件包及配置文件: sudo apt purge <package_name>

  • 查找软件包命令: sudo apt search <keyword>

  • 列出所有已安装的包:apt list --installed

  • 列出所有已安装的包的版本信息:apt list --all-versions

dpkg

dpkg是一个安装、构建、删除和管理Debian包的工具。所有源自“Debian”的linux的发行版都可使用dpkg命令,比如Ubuntu。

dpkg有个问题,就是不能像apt一样能识别安装程序的依赖程序并一起下载

dpkg(选项)(参数)

选项:

-i:安装软件包

-r:删除软件包

-P:删除软件包的同时删除其配置文件

-L:显示于软件包关联的文件

--unpack:解开软件包

-c:显示软件包内文件列表

-configure:配置软件包

(命令后面跟两个杠是长参数,跟一个杠是短参数,即长参数的简化) 

常用命令

df

df 查看硬盘分区情况

-h 更人性化显示,大小是用k M G 显示

du 

用于查看目录的大小

du -sh ./ 查看当前目录大小,(不加s会显示目录下面所有文件的大小信息,把他们递归出来)

du -sh ./*查看当前目录每个文件或子目录的大小

man

manue的简写,后跟命令,可以检查相关命令的用法

-k 模糊匹配,你在man -k 后面输入的命令会被检索出一系列含有该命令名字的其他命令(比如搜的是passwd,显示会包含gpasswd和chpasswd等其他命令)

-p精确匹配

date

显示日期,详见Linux date 命令 | 菜鸟教程 (runoob.com)

tzselect

用于选择时区

cal

用于显示日历

gedit

linux下的一个记事本

在用记事本写程序时,最上一样一定要加一个Shebang#!,这是用来指定你的解释器的

使用例:

#!/usr/bin/env python3

passwd

默认修改当前账户的密码(如果后面不跟用户名)

logout

注销

exit

退出终端

reboot

重启

shutdown

关机

-r now 立即重启

-r +5 三分钟之后重启

-h now 立即关机

-h +5 提示三分钟之后关机

-h 12:00 十二点关机

-c 取消关机

cd

切换目录

cd ..转到前一个目录

cd - 转到前一个目录(不是上一级目录!)

pwd

查看当前的工作路径

ls 

查看当前目录下文件(如果又想用-a 又想用-l,可以直接-al)

-a 显示所有文件(包括前面打了个.的隐藏文件)

-A 和-a基本一样,只是不显示当前目录.和上一级目录..

-l 显示文件的详细信息,后面跟目录下的某文件可以显示文件信息

        -l显示出的文件信息含义:

                开头为-,代表普通文件

                为d,代表是一个目录

                为l,代表是链接文件(相当于快捷方式)

                后面部分的rwxrwxrwx:

                        三个一组,分别代表用户(user),所在组(group),其他人(other)的权限

                        r表示可读,w表示可写,x表示可执行

ls abd* 星号叫做通配符,会自动识别星号以外文件名内含相同字符的文件

-r 按英文首字母逆向排序

-R 把当前目录下的文件都遍历一遍,可以用命令tree代替效果更好

mkdir

创建目录用

-p bb/cc/cc 可以一次性创建多层目录,不加-p会报错

rm

删除文件,rm命令不建议用,容易误删

-i 删除文件时给提示

-r 强制删除,这样也能删除目录

mv

既可以移动文件和目录,又可以给他们重命名

mv a.txt b.txt a文件重命名为b

mv a.txt /temp 把a文件移动到/temp目录下,这个目录会展示存放文件,一段时间后自动清除

cp

复制文件

cp file1 file2 复制file1 文件并命名为file2

cp -r aa/ bb/ 复制目录aa并命名为目录bb,必须加-r强制执行才可以

cp -a 复制文件时保留原来文件的读写权限

ln

为文件建立链接

ln [参数] 源文件 链接文件

ln -s 建立一个软链接(类似于快捷方式);删除源文件会让链接文件失效

不加任何参数,默认建立硬链接,文件大小同源。删除文件不改变链接文件

touch

修改文件时间 

touch file1,若file1不存在则被创建

touch -c file1,若file1不存在不被创建

tiuch -r file1 file2 让file2的时间戳和file1相同

touch -t 201210120505.2 file1 指定时间

cat

显示文件内容

cat -n 增加行号

cat -s 把文件中的多个空行变成一个空行,但是一行只有空格不视为空格

tac

倒着显示文件内容

wc

显示文件的信息,输出分别为 行数   非空行行数  字符数,注意换行符这类占两个字符哦

-c 只看byte数,用了多少字节

-l 只看行数

-w 只看字数(单词)

sort

查看文件内容,但是按首字母(或数字)每行排序的

-r 按首字母逆序

-n 按纯数字大小排序

-b 忽略最前面的空格符

sort -t ‘你想用任意的符号替换分隔符’ 

uniq

扫描文件,重复行只显示一行

-c 显示行出现的个数

-u 显示时将有重复的行全部删除

cut

从一个文本文件中提取文本列,要配合参数使用

-d 后面加分隔字符。和-f一起用

-f 依据-d后面的分隔字符将一段信息分为几段,-f后面跟要取第几段,例如

cut -d : -f 3 aa.txt

-c 以字符为单位取出每行固定字符区间

cut -c 5 aa.txt 隔五个取一个,下一行继续

cut -c 1,5 aa.txt 取第一个和第五个放在一行,下一行重复进行

cut -c 1-5 取第一个到第五个,下行继续

cut -c 1-3,5 以此类推

tee 

用来把前一个命令标准输入后输出的数据输出成一个文件例如

比如说想把cat的用法输出出来,就可以

cat --help | tee how_to_use_cat.txt

history

输出之前执行的所有命令

history 5 输出最近的五条

history !253 执行第253条命令

这里说一下感叹号有妙用

如果你之前输入了一个gedit命令

输入!ge就会检索并执行最近一个前面有ge的命令(不论是否能正确运行)

history调用的历史命令都储存在/home/用户名/.bash history里

more

也是浏览文件的命令

但是可以翻页,显示看了百分之多少

在more出来的文件中输入/后加你想寻找的内容便可以查找文本

less

也是浏览文件

head

也是浏览文件,默认是显示前十行

head -n 50 浏览前五十行

tail

也是浏览文件,默认是显示后十行,用法和head一样

但是tail有一个优秀点,tail -f 可以实时监控文件的变化(等同于tailf)

which

查看可执行的命令的所在位置

tar

打包或解压目录(注意,打包是把一堆目录文件合并成一个文件,压缩是把一个大文件通过算法变成一个比较小的文件。

常用参数

-c 创建.tar打包文件

-x 解包.tar文件

-v 显示详细信息

-z 压缩(.gz)或解压缩tar

-f 指定打包后的文件名,最后一个参数

例如

tar -czvf dir1.tar.gz dir1 #将目录dir1打包并压缩成dir1.tar.gz文件

tar -cf dir1.tar dir1 #打包

gzip dir1.tar #压缩

tar -xf dir1.tar #解包dir1.tar

tar -zxf dir1.tar.gz #解压并解包dir1.tar.gz

chmod

修改权限,u代表使用者,g代表组,o代表其他人,a代表所有人

chmod u=rw aa.txt 代表使用者可以读写但是不能执行文件aa

或

chmod u+w 给使用者增加可写权限

chmod u-w 限制使用者的可写权限

更聪明的是,linux给可读r=4,w=2,x=1,则7代表rxw,3代表-wx,以此类推

chmod 755 代表rwxr-xr-x

对于目录的rwx,可读代表你能查看目录下的文件,可写代表你能修改目录下的文件(增删,改时间等),可执行代表目录可以被使用(只能cd访问其他啥都不能干)

chmod -R 递归修改某目录以及目录下的所有程序的权限 

chown

改变文件的所有者和所有组

chown someone aa.txt

chown someone:somegroup aa.txt

usreradd

添加用户

但是我们会发现添加的用户打开时显示在/home下找不到相应用户文件,这需要 useradd -m

还有可能因为指定目录的shell为/etc/sh出现的问题(Ubuntu就会碰到),这需要useradd -s /bin/bash

参数    参数说明
-b,–base-dirBASE_DIR    新帐户主目录的基本目录
-c,–commentCOMMENT    新帐户的GECOS字段
-d,–home-dirHOME_DIR    新帐户的主目录
-D,–defaults    打印或更改默认用户添加配置
-e,–expiredateEXPIRE_DATE    新帐户的到期日期
-f,–inactiveINACTIVE    新帐户的密码不活动期
-g,–gidGROUP    新帐户的主组的名称或ID
-G,–groupsGROUPS    新帐户的补充组列表
-h,–help    显示此帮助消息并退出
-k,–skelSKEL_DIR    使用这个替代的框架目录
-K,–keyKEY=VALUE    覆盖/etc/login.defs默认值
-l,–no-log-init    不要将用户添加到lastlog和faillog数据库
-m,–create-home    创建用户的主目录
-M,–no-create-home    不要创建用户的主目录
-N,–no-user-group    不要创建与用户同名的组
-o,–non-unique    允许创建具有重复(非唯一)UID的用户
-p,–password PASSWORD    新帐户的加密密码
-r,–system    创建一个系统帐户
-R,–root CHROOT_DIR    要导入的目录
-s,–shell SHELL    新帐户的登录shell
-u,–uidUID    新帐户的用户ID
-U,–user-group    创建与用户同名的组
-Z,–selinux-user SEUSER    为SELinux用户映射使用特定的SEUSER

创建新用户后,通常没有家目录下的配置文件(useradd忘了-m连家目录都没有),可以从/etc/skel/下拷贝到家目录,注销账号再登陆进去,source .bashrc (source是用来执行脚本文件的)后就能使用.bashrc提供的东西了

userdel

删除用户信息的,加上-r会删除除了用户信息包括家目录

usermod

用来修改用户账号的各项设定

  • -c<备注>  修改用户帐号的备注文字。
  • -d登入目录>  修改用户登入时的目录。
  • -e<有效期限>  修改帐号的有效期限。
  • -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。
  • -g<群组>  修改用户所属的群组。
  • -G<群组>  修改用户所属的附加群组。
  • -l<帐号名称>  修改用户帐号名称。
  • -L  锁定用户密码,使密码无效。
  • -s<shell>  修改用户登入后所使用的shell。
  • -u<uid>  修改用户ID。
  • -U  解除密码锁定。

groupadd

添加组

-g 可以给组赋予一个ID,最好1000以上

groupmod

修改组

和usermod用法一样

id

用于查看用户信息

vi

一个编辑器

su

登录用户,最好要加个 - 

su - usr1

sudo

暂时作为管理员运行文件,是一个安全保障,并且文件/etc/sudoers 里面可以配置sudo运行时的参数(比如对什么用户或组需要管理员权限等等,还可以直接执行命令visudo)

alias

取别名,给一些复杂的命令取个简单点的名字

alias ll='ls -l'

但是如果想长期保存这些命令,必须要取修改在配置文件 ~/.bashrc

echo

就是打印,把内容输出

-n 后的结果是没有换行

locate

查找文件

locate 想查找内容

例如:

locate /etc/sh,只要文件的路径有/etc/sh这几个字符,都会显示出来

locate -i 忽略大小写

如果不久(当天)新建了一个文件,locate是找不到的,需要输入命令updatedb更新数据库才能用locate查找

find

也是查找文件,但是locate是从数据库内查找(所以要updatedb),而find是从磁盘内遍历查找

find /home/ -name ‘*a.txt’,即在/home目录下以名字查找名字末尾为a.txt的文件

find /home/ -iname ‘*a.txt’,不区分大小写

find /home/ -type f,按文件类型查找,f代表普通文件

find /home/ -maxdepth 2 -type f,查找时指定最大查找深度,即再往下找几个文件夹到底

find /home/ -mindepth 2 -type f,指定最小深度,从往下第几个文件夹开始查

d: 目录

c: 字型装置文件

b: 区块装置文件

p: 具名贮列

f: 一般文件

l: 符号连结

s: socket

find /home/ -size 10M 查找大小大于10m的文件

find /home/ -size 10M 查找大小小于10m的文件

b 代表 512 位元组的区块,c 表示字节,k 表示 kilo bytes,M,G。

下列是按时间查找的方法

-amin n : 在过去 n 分钟内被读取过

-anewer file : 比文件 file 更晚被读取过的文件

-atime n : 在过去 n 天内被读取过的文件

-cmin n : 在过去 n 分钟内被修改过

-cnewer file :比文件 file 更新的文件

-ctime n : 在过去 n 天内创建的文件

-mtime n : 在过去 n 天内修改过的文件

find /temp/ -nouser 找没有所有者的文件

-nogroup 没有所有组的文件

find /temp/ -uid 1003 按用户id查找

find /temp/ -gid 1003 按组id查找

find /temp/ -user www 按用户名查找

find /temp/ -perm 777 按权限去查找

可以通过逻辑语-a和-o来增加查找要求,例如

sudo find /home -user www -a -perm 664,即按照用户名为www权限为664查找相应文件

find /temp/ -perm 777 -ok ls -l 对执行结果显示详细信息,-ok后面跟对前面结果进行的操作

mount

挂载文件 

mount /dev/cdrom /mnt 把光驱/dev/cdrom挂载到/mnt下,打开/mnt能看到光盘的内容

mount -o remount /mnt 可以在不卸载的方法下重新挂载

mount a.iso -o loop /mnt 从镜像文件里面复制文件到/mnt

umount

卸载

若卸载光盘时显示busy,umount -l 强制卸载

快捷键

ctrl+c,强制终止任务

ctrl+l,清屏

tab,自动补全命令,按两下显示所有可能的命令

ctrl+k,删除当前光标所在位置后面的内容

ctrl+u,删除当前光标所在位置到行首的内容

ctrl+w,删除当前光标所在位置到前面第一个空格的内容

ctrl+y,恢复之前删除的命令

ctrl+a,将光标移动到最前面

ctrl+e,将光标移动到最后面

ctrl+r,搜索之前打出的一个命令

ctrl+d,退出当前shell命令行

ctrl+shift++,屏幕字变大

ctrl+-,屏幕字变大

alt+. 依次找之前命令跟的字符串(必须先打一个命令)

符号

管道符 |

主要用于多重命令处理,前面命令的打印结果作为后面命令的输入。

例如: cat a.log | wc

重定向 >

> 一个存在的文件,文件清空

> 一个不存在的文件, 生成一个空文件

echo ‘123’ > aa.txt 删除文件内容,添加123

echo ‘123’ >> aa.txt 往此文件内追加输入文本123

1> 代表输入且只输入前面命令标准正确输入的内容,意思和>一样, dsawdsaw 1> aa ,在aa中结果为空

2>代表输入且只输入前面命令标准错误输入的内容,dsawdsaw 2> aa ,在aa中结果为报错信息的文本内容

&>代表标准正确和错误输出一起输入进文件


 

通配符*

查找文件时加不全的文件名加*,省略后面的字符进行模糊查找

反引号`

反引号是波浪线~那个键不按shift时打出来的符号,不要和正引号弄反了

反引号的作用是,反引号内的文本作为命令执行,例如

ll `sudo find /home/ -type f`

流编辑器

sed

sed 参数 动作 文件

参数:

-e command,--expression=command允许多台编辑。

-h,--help打印帮助,并显示bug列表的地址。

-n,--quiet,--silent安静模式,本来sed会把所有行都列出来,-n后只出现处理过的行

-f,--filer=script-file直接将sed的动作写在文件里。-f filename 则可以运行filename内的动作。

-i 直接修改文件内容,不输出到终端

动作:

p

打印匹配行(和-n选项一起合用)

=

显示文件行号

a\

在定位行号后附加新文本信息

i\

在定位行号后插入新文本信息

d

删除定位行

c\

用新文本替换定位文本

w filename

写文本到一个文件,类似输出重定向 >

r filename

从另一个文件中读文本,类似输入重定向 <

s

使用替换模式替换相应模式

q

第一个模式匹配完成后退出或立即退出

l

显示与八进制ACSII代码等价的控制符

{}

在定位行执行的命令组,用分号隔开

n

从另一个文件中读文本下一行,并从下一条命令而不是第一条命令开始对其的处理

N

在数据流中添加下一行以创建用于处理的多行组

g

将模式2粘贴到/pattern n/

y

传送字符,替换单个字符

一般是d,p,s用的比较多

使用例子 sed ‘3,5d’ a.txt 删除文件a的第三行到第五行内容

sed '/aaa/,/bbb/d' a.txt 删除文件字符aaa那行到字符bbb那行间所有内容

sed '/aaa/+3d' a.txt 删除aaa那一行后三行内容

sed '5~2d' a.txt 从第五行开始删除偶数行,要删除奇数行就是~1

sed ‘3,5p’ a.txt 打印文件a的第三行到第五行内容

sed ‘\$p’ a.txt 打印文件最后一行

sed ‘\$c\good’ a.txt 修改最后一行为good

sed 's/aaa/bbb/' a.txt 把最前面的aaa内容替换为bbb

sed 's/aaa/bbb/g' a.txt 把全部aaa替换为bbb

sed 's/\(aa\)\(a\)\1bbb\2/' 把aaa拆分中间加入bbb,输出aabbba

或 sed -r 's/(aa)(a)/\1bbb\2/'

x

x为行号

x,y

表示行号从x到y

/pattern

查询包含模式的行

/pattern /pattern

查询包含两个模式的行

pattern/,x

在给定行号上查询包含模式的行

x,/pattern/

通过行号和模式查询匹配的行

x,y!

查询不包含指定行号x和y的行

awk

awk '{pattern + action}' {filenames}

awk '{print $2}' z.txt 打印文件每行第二列的词组(以空格为界,$0代表整行)

变量名  含义

ARGC  命令行变元个数

ARGV  命令行变元数组

FILENAME 当前输入文件名

FNR  当前文件中的记录号(行数)

FS  输入域分隔符,默认为一个空格

RS  输入记录分隔符

NF  当前记录里域个数(分隔符之间的叫域,相当于一个单词,NF就相当于单词数)

NR  到目前为止记录数

OFS  输出域分隔符

ORS  输出记录分隔符
 

例 awk '{print FNR}' z.txt

awk 'BEGIN{OFS='_'}{print $1}END{}' 可以预定义域分隔符为_

vi vim

操作是一样的,只是vim更有好一些

(感谢原作者ICer消食片,若有侵权会立即删除)

按esc便命令模式

命令模式下按i是插入模式,大写I是在行首进入插入模式

小写a是光标向后移动一个位置进入插入模式,大写A是在末尾进入插入模式

小s是删除当前字符进入编辑模式,大S是删除当前行并进入编辑模式

小o是在当前行下一行开启一个新行并进入编辑模式,大O是在当前行的上面插入一个空行并进入编辑模式

大R是替换模式,替换当前光标后面所有内容,写多少替换多少,小r是替换当前字符

按两下小g是到文章开头,两下大G是到文章结尾,如果想到特定行,可以16G,便跳到16行

按下3+便是向下移动三行,按下3-便是向上移动

按下5h向左移动五个字符,按下5l为向右移动五个字符,按下5j为向下移动五个,按下5k向上移动五个

按下$ 到行尾

按下^到行首

按两下小d删除一行,3dd删除三行,d$为删除当前位置到行尾,d^为删除当前位置到行首

在命令模式下按冒号:,再w,这是存储

yy为复制当前行,3yy为复制三行,y$为复制当前位置到行尾的内容,y^你懂的,p为粘贴

u为撤销,ctrl+r是反撤销

w是每次走一个‘单词’,b移动到当前单词的行首,e移动到当前单词的行尾

查找:/想找到内容     查找光标以下的内容      按n 为从上往下查找 按N为从下往上查找

        ?想查找的内容    查找光标以上的内容

:q是退出

:wq是保存并退出

:!q是强制写入

:!w是强制写入

:set nu 显示行号

:s/i/j/ 把当前行离行首最近的i替换为j

:s/i/j/g 把整行i变为j

:%s/i/j/g 把整个文章的i变为j

:1,3s/i/j/g 把一到三行的~~~~~~

环境变量

环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数

可用env查看当前用户下的环境变量

可用export直接设置当前用户的环境变量,例:export LANG='zh'

常用环境变量

PATH

修改环境变量PATH是为了直接运行一个程序而不需要再输入具体路径

对单个用户修改:~/.profile --> PATH='要增加的路径 :$PATH'

对全体用户修改(不推荐):/etc/profile --> PATH='要增加的路径 :$PATH'

华为昇腾CANN PyPTO框架解析:Python算子开发与蚂蚁百灵大模型0 Day支持实战 在AI硬件加速领域,高性能算子开发是释放芯片算力的关键。传统上,为特定AI加速卡(如NPU、GPU)编写算子需要深厚的C++和硬件架构知识,门槛极高。其原理是通过编译器将计算逻辑映射为底层硬件指令,实现计算加速。这项技术的核心价值在于打通算法创新与硬件性能之间的鸿沟,直接影响模型推理效率与部署成本。随着大语言模型等复杂AI应用兴起,对灵活、高效的自定义算子需求日益迫切。华为昇腾最新推出的CANN PyPTO框架,正是针对这一痛点,允许开发者使用熟悉的Python语法开发昇腾NPU高性能算子,大幅降低开发门槛 阅读详情

相关推荐

Day02:安装Python

安装Python是学习和使用这门语言的第一步。通过安装Python环境,您可以在本地运行代码、开发项目以及学习各种编程技巧。一个正确安装的Python环境不仅能提升学习效率,还能确保兼容各种开发工具和库。Python提供了多种安装方式,适用于不同操作系统,如Windows、macOS和Linux。本章将详细介绍如何在这些系统上安装Python,以及如何配置开发环境。

AIGC 655

linux awk命令根据分隔符输出,Linux运维知识之Linux awk命令详解

本文主要向大家介绍了Linux运维知识之Linux awk命令详解,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。awk:适用程序,一种unix工具就是一个强大的文本分析工具,相对于grep查找、sed的编辑,awk在对数据分析并生成报告的时候,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种处理。awk是用来操作数据和产...

weixin_33799059的博客 1731

保姆级教程:用+86手机号成功注册Discord的三种亲测方法(附节点选择技巧)

本文提供了三种经过验证的方法,帮助用户使用+86手机号成功注册Discord,包括号码格式调整、网络环境优化和设备组合方案。同时详细解析了'手机号无效'报错的深层原因,并附上节点选择技巧,确保注册流程顺利。

weixin_42683394的博客 1911

上古神器 sed 教程详解,小白也能看的懂

介绍 熟悉 Linux 的同学一定知道大名鼎鼎的 Linux 三剑客,它们是 grep、awk、sed,我们今天要聊的主角就是 sed。 sed 全名叫 stream editor,流编辑器,用程序的方式来编辑文本,与 vim 的交互式编辑方式截然不同。它的功能十分强大,加上正则表达式的支持,可以进行大量的复杂文本的编辑操作。 实际上 sed 提供的功能非常复杂,有专门的书籍讲解它。本文不会讲 sed 的全部东西,只会从 sed 的工作原理、常见使用方法等方面进行说明和讲解,同时也会给出大量的实践用例来帮.

394

RDD2022 数据格式转换与清洗

Rdd2022数据集,是关于道路损伤的数据集,与rdd2020相比增加了两万多张图片但是由于格式不能被yolo直接使用且其中有大量的图片没有符合要求的标注,特写此文章记录数据清洗与格式化的过程。

蓝胖子的博客 9952

【深度学习基础】Temporal Fusion Transformer

从下向上看:全连接(Dense) → ELU(指数线性激活函数(比relu好点,有利于模型收敛)) → 全连接(Dense) → 门控线性单元(Gate)(Gated Linear Units (GLUs)) → Layernorm。:一方面,它可以进行静态上下文变量和动态变量的融合,另一方面,通过门控进行了特征选择操作,门控体现在GLU(门控线性单元)中,用了sigmoid控制信息的通过程度,具有良好的适应性,能够自动选择有效信息,自适应地调整网络复杂性。输入:主输入,可选的上下文向量c。

weixin_41838721的博客 1227

Python 100天学习路线:从记语法到交付项目,每天学什么一次讲清

装好 Python 之后,教程看到一半就找不到下一步该干什么,你是不是也卡在这?Python-100-Days(官方全名"Python - 100天从新手到大师")把 100 天的学习拆成了 100 个独立单元:每天任务明确、每章带练习,学完每个阶段就有一件拿得出手的东西。它解决的不是"教你更多语法",而是"你今天干什么、明天干什么"。 [![TIOBE 编程语言排行榜中 Python 位列第一

gitblog_00400的博客 877

Vue3项目实战:集成h265webjs打造高性能Web端H.265播放器

本文详细介绍了如何在Vue3项目中集成h265webjs库,构建高性能的Web端H.265播放器。通过封装播放器管理模块、利用Vue3组合式API优雅管理生命周期,并提供了从环境准备、核心集成到进阶优化的完整实战指南,有效解决了浏览器原生不支持H.265解码的难题,显著降低视频流带宽占用。

weixin_29016833的博客 364

Python 100天从入门到项目交付:一条能跑完的完整学习路线

收藏夹里躺了二三十个教程,每个看二十分钟就关掉。不是你不聪明,是没人告诉你"今天该写什么、写完往哪走"。Python-100-Days 把整个学习拆成 100 个按天推进的单元,每天打开对应文档就知道练什么、交什么作业。 ## 📌 为什么这条路线值得跟 2023 年 TIOBE 榜单,Python 排在编程语言第一位。你跟着走的方向本身没有退场风险。 [![TIOBE 年度编程语言排行榜,

gitblog_00962的博客 454

基于YOLOv8的MVTec AD缺陷检测系统设计与实现

速度快,精度高;支持 anchor-free 架构;支持实例分割和图像分类;模块化代码,易于部署与改进;完美兼容 ONNX、TensorRT 等推理框架;官方支持多平台训练和推理(CPU/GPU)。YOLOv8 是工业视觉检测落地非常理想的选择。MVTec AD(Anomaly Detection)数据集包括15类工业对象,每个对象包括多个子类缺陷(例如 “scratch”, “crack”, “hole”)及正常图像。类别缺陷子类bottlecablecapsule。

YOLO 931

5大步骤!轻松玩转Dorisoy.Rigger:基于.NET Core 6、MAUI和Blazor的多数据库开发框架生成器

各位小伙伴,你们是否厌倦了每次项目启动都要从头配置数据库连接、编写重复的代码?今天,我们就来聊聊如何使用Dorisoy.Rigger这个强大的开发框架生成器,让你的.NET Core 6、MAUI和Blazor项目开发变得简单又高效!准备好迎接开发的新乐趣了吗?让我们一起开始吧!接下来,我们需要定义数据模型。假设我们有一个简单的用户表,包含ID、用户名和密码字段。在项目中创建一个新的类文件,命名为User.csset;set;set;这段代码定义了一个用户模型,其中包含了用户的ID、用户名和密码。

java专栏 1739

100天学Python, 从菜鸟到大佬!

Linux基础命令Linux中的实用程序Linux的文件系统Vim编辑器的应用环境变量和Shell编程软件的安装和服务的配置网络访问和管理其他相关内容Day36~40 -数据库基础和进阶关系型数据库MySQLNoSQL入门。

2401_86168842的博客 1635

c++中,部署Ethercat IGH + PREEMPT_RT 环境,跑DC模式,如何实现?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。

**My Coding Family** 1356

Python-100-Days: Day01

Python-100-Days: Day01

u011868279的博客 1117

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Python 100天学习路线:从零写到能上线的项目,每天就知道该干什么

你是不是也这样:Python 视频看了几十个小时,当时觉得都懂了,真动手做个东西,第一行代码就卡住。缺的往往不是知识,而是一份"每天明确该干什么"的路线。Python-100-Days(全称"Python - 100天从新手到大师")把整个学习过程拆成 100 个按天推进的实战专题,每天一个目标、带练手题目,只要不断更,就能学完。 [![Python 编程学习路线:100天从语法入门到项目交付]

gitblog_00820的博客 729

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

从零开始学python3

从零开始学python3 太原理工团队机器人20日打卡day3 ​ 经过前两天长时间战斗,终于把Linux的基础学习完成,而今日开始了python的学习,因为高中时期学过一部分python,所以今日学习总的来说还是十分简单的。需要注意的是,本文默认在Linux下编程。 ​ 同样,在开头列出今天的学习内容,也可以说是思维顺序: 1、第一个python程序 2、执行python的方式 3、Pych...

soul_study的博客 2405

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Python全栈开发day2~day4

完成情况:day2~day4(Linux操作系统的使用) 思维导图:

qq_43298183的博客 167

小白学Python-Day01

Python程序可通过交互式(命令行输入指令)或文件式(.py文件)执行。Linux常用命令如pwd查看路径、cd切换目录。Python是解释型语言,源代码先编译为字节码(.pyc文件),再解释执行,兼具开发效率和跨平台优势,但运行速度较慢。练习建议:在指定目录创建.py文件并运行程序。

Fu_Mingjia的博客 210

python与linux的时间模块对比

今天看python时间模块time的时候发现和LINUX系统编程中的时间调用函数基本一样,以前刚好没有好好学习LINUX C编程的时间模块就对比进行了学习。 本文只是给出函数接口和使用方式,详细了解请参考LINUX main page和PYTHON help 本文不涉及asctime和ctime,并且C中涉及多线程编程注意选择可重入性函数 一、时间存在方式 其实不管是C还是PYTHON这里都包含3种时间不同存在的方式 日历时间:Epoch以来的秒及新纪元时间(1970年1月1日 00:00:00)以

伊伊_f 392

TVBoxOSC 上手指南:从克隆仓库到电视盒子上播放的完整流程

TVBoxOSC 是开发者 o0HalfLife0o 维护的开源项目,面向电视盒子的流媒体播放、配置与管理。这篇指南会带你走通克隆仓库、下载可安装包、装进盒子并跑通播放的全流程。读完照着做,你能在自家 Android 电视盒子上得到一个可直接使用的影音入口。 ## 谁适合先试,谁可以先放下 先判断项目定位,能省很多折腾时间: - **适合**:手头有 Android 电视盒子,想把它变成一台

gitblog_01145的博客 668

从零开始学Python2

从零开始学Python 太原理工大学机器人团队20日打卡day2 ​ day2我的进程是学完Linux剩余的基础操作,我习惯于学东西时候快速学习,然后节省时间用来练习。二倍速过后,只需要理解各个原理,具体的细节还是主要在于平时练习时候的打磨。我学习最大的驱动力之一就是任务驱动。为了完成这个任务,我会去学很多平时看起来不可能用到的知识,不过这必然有利于我个人形成一个更庞大的知识框架,有利于在未来岗...

soul_study的博客 1220

​Python 入门基础笔记 Day01~15基础篇

IDLE(Integrated DeveLopment Environment)是Python自带的简易开发工具,适合新手写小代码。​:安装后建议同时安装VS Code(代码编辑器)或PyCharm(专业IDE),但本阶段用系统自带终端也能跑通!​(REPL:Read-Eval-Print Loop),输入代码后立即执行并显示结果。关键代码(如复杂逻辑、易错步骤)加注释即可,简单的代码(如。注释是代码中“不执行”的说明文字,用于解释代码功能(自己或他人看懂)。​:让电脑能“听懂”Python代码。

qq_57854471的博客 912

Python 100天学习路线指南:从入门到交付项目的完整实战路线

学了三个月 Python,是不是还卡在"会写语法,不会写项目"的阶段?运营丢来一堆杂乱报表,你只能干瞪眼。Python-100-Days 解决的就是这个问题:它把整个 Python 学习拆成 100 个按天推进的实战专题,每天目标明确,每过一段就有东西拿得出手。 ## Python-100-Days 是什么 它是一条"路线",不是视频合集,也不是 API 字典。把学 Python 这件事拆成

gitblog_00257的博客 405

码农学技术————六个月学习python全栈【Day02】

今日学习目标: 了解操作系统和编程语言发展史,安装会用python编译器和pycharm。 今日学习内容: 内容概要: 操作系统 文件的概念 帮助你更加直观的理解操作系统的作用 编程语言的发展史 编程语言的分类 python简介 python解释器的版本说明 python解释器下载与安装 python解释器多版本共存 第一个python程序 编程软件的下载与使用 内容详情 操作系统 # 控制 协调 管理计算机各个硬件的工作(主要是针对CPU) 操作系统其

fonnt的博客 2729

从零开始学python

从零开始学python 太原理工大学机器人团队20天学习打卡 day1 ​ 为了学习一门新的语言,我们首先必定需要先了解开发环境。Linux系统因为其安全、免费且方便多用户使用而多用于各种服务器,又因为其体积小巧而被用于各种嵌入式系统。(值得一提的是,现在移动端占有率最高的两种操作系统之一的Android系统就是基于Linux开发的)又因为其我认为磨刀不误砍柴功,所以首先利用两天时间了解和学习一...

soul_study的博客 3279
上一篇: python day8:文件操作
下一篇: python day14 深浅拷贝,集合,函数
Dovah1n
博客等级 码龄6年 404粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值