爆肝万字带你超级详细全面了解Linux命令大全
前言
学习交流:在下周周ovoの社区
对这篇万字博客目录总结如下:
关机命令、重启命令,创建用户、删除用户、修改密码、切换用户、切换到超级用户、禁用/解锁用户账户、修改信息、组管理、列出用户、修改用户属性、用户权限管理、用户信息管理、用户登录信息、系统管理员操作,浏览和切换目录、创建和删除目录、复制、移动和重命名目录、查找和搜索目录、查看目录信息、修改目录权限、查看目录使用情况,查看文件属性、修改文件权限,、复制、移动和重命名、删除、查找、查看文件内容、文件压缩和解压缩,更改文件或目录的所有者、更改文件或目录的所属组、更改文件或目录的权限、递归更改文件或目录的权限、修改文件或目录的所有者和所属组、查看文件或目录的权限信息、特权用户运行命令、修改特殊权限、改变文件或目录的访问控制列表,使用apt-get进行软件包管理、使用dpkg进行软件包管理、使用apt-cache进行软件包查询、使用apt-file进行文件查询、使用snap进行软件包管理、使用flatpak进行软件包管理,进程查看和信息、进程管理、进程监控、进程通信,网络配置和接口管理、网络连接和通信,RPM命令、YUM命令
一、目录树结构
【上面为网络图片】
Ubuntu下常见的目录树结构及其作用我用下面的表格来表示【已按名称排序】:
目录结构名称 作用 / 根目录,整个文件系统的起始点 /bin 存放可执行的用户命令和基本的系统命令 /boot 存放启动系统所需的文件,如内核和引导加载程序等 /dev 存放设备文件,包括硬件设备和外部设备的节点文件 /etc 存放系统配置文件和全局配置文件 /home 用户主目录的基础目录,每个用户在该目录下有一个以用户名命名的子目录 /lib 存放系统所需的共享库文件 /media 用于挂载可移动介质(如USB驱动器、光驱等)的目录 /mnt 用于挂载临时文件系统或其他文件系统的目录 /opt 存放可选的第三方软件包安装目录 /proc 虚拟文件系统,提供有关运行中的内核和进程的信息 /root root用户的主目录 /run 存放运行时文件和进程信息 /sbin 存放系统管理员使用的系统命令和程序 /srv 存放服务相关的数据文件 /sys 虚拟文件系统,提供了与内核和硬件相关的信息 /tmp 存放临时文件 /usr 存放系统级别的应用程序和文件 /var 存放变化的文件,如日志文件、数据库文件等
二、Linux基础命令篇
2.1、开关机和重启命令
1、关机命令:
sudo poweroff:
立即关闭系统。sudo shutdown -h now:
立即关闭系统。sudo shutdown -h +m:
在m分钟后关闭系统。sudo halt:
关闭系统,类似于poweroff。****2、重启命令:
sudo reboot:
立即重启系统。sudo shutdown -r now:
立即重启系统。sudo shutdown -r +m:
在m分钟后重启系统。
2.2、用户管理相关命令
创建用户:
sudo adduser username:
创建一个新用户。sudo useradd username:
创建一个新用户。- sudo useradd -m username:
非常强烈建议使用 不然你会出现以下错误:点此进入删除用户:
sudo deluser username:删除一个用户。
sudo userdel username:删除一个用户。
修改用户密码:
sudo passwd username:
为指定用户设置密码。切换用户:
su username:
切换到指定用户账户。切换到超级用户:
sudo command:
使用超级用户权限执行指定命令。禁用用户账户:
sudo usermod --expiredate 1 username:
禁用指定用户账户。解锁用户账户:
sudo usermod --expiredate "" username:
解锁指定用户账户。将指定用户的帐户过期日期设置为空字符串,从而使该用户的帐户永久有效。修改用户信息:
sudo usermod -c "New Comment" username:
修改用户的注释信息。用户组管理:
sudo groupadd groupname:
创建一个新用户组。sudo groupdel groupname:
删除一个用户组。sudo usermod -a -G groupname username:
将用户添加到指定用户组。列出用户:
cat /etc/passwd:
显示系统中的所有用户。修改用户属性:
usermod -l new_username username:
修改用户账户的用户名。usermod -d new_home_directory username:
修改用户账户的家目录。usermod -s new_shell username:
修改用户账户的默认 Shell。usermod -aG groupname username:
将用户添加到指定用户组。用户权限管理:
visudo:
编辑 sudoers 文件,授权用户执行特定的管理员任务。sudo:
以超级用户权限执行命令。用户信息管理:
chfn username:
修改用户账户的全名和其他信息。chage:
更改用户账户的密码过期策略和其他选项。用户登录信息:
whoami:
显示当前用户的用户名。w:
显示当前系统上已登录的用户和他们的活动情况。last:
显示用户登录历史记录。who:
显示当前登录系统的用户信息。切换用户:
su username:
切换到指定用户账户。su -:
切换到目标用户的环境,并加载其环境配置文件。查看用户信息:
id username:
显示指定用户账户的 UID、GID 和所属的用户组。finger username:
显示指定用户账户的详细信息。系统管理员操作:
sudo -l:
列出当前用户可以执行的特权命令。sudo -u username command:
以指定用户身份执行命令。
2.3、目录相关操作命令
浏览和切换目录:
pwd:
显示当前工作目录的路径。ls:
列出当前目录中的文件和子目录。cd directory:
切换到指定目录。cd ..:
切换到当前目录的上级目录。cd ~:
切换到当前用户的主目录。创建和删除目录:
mkdir directory:
创建一个新的目录。mkdir -p directory/subdirectory:
创建目录及其子目录,如果不存在则创建。rmdir directory:
删除空目录。rm -r directory:
递归删除目录及其内容。复制、移动和重命名目录:
cp -r directory new_directory:
复制目录及其内容到新目录。mv directory new_directory:
移动或重命名目录。查找和搜索目录:
find directory -name filename:
在指定目录及其子目录中搜索指定的文件。locate filename:
通过文件数据库快速查找文件。查看目录信息:
ls -l:
以长格式显示目录中的文件和子目录。ls -a:
显示包括隐藏文件在内的所有文件和子目录。du -sh directory:
显示目录的总大小。tree directory:
以树形结构显示目录和子目录。修改目录权限:
chmod permissions directory:
修改目录的权限。chown user:group directory:
更改目录的所有者和所属用户组。查看目录使用情况:
df -h:
显示磁盘空间使用情况。du -h directory:
显示目录的磁盘使用情况。写在最后: 可以使用
man命令加上命令名称来查看每个命令的详细用法和选项。
2.4、文件相关操作命令
查看文件属性:
ls -l:
以长格式列出文件的详细属性信息。ls -lh:
以人类可读的格式列出文件的详细属性信息。stat filename:
显示文件的详细属性信息。更多属性和作用如下表:
选项 解释 -l 以长格式列出文件的详细属性信息。 -a 列出包括隐藏文件在内的所有文件。 -h 以人类可读的格式显示文件大小。 -i 显示文件的索引节点号(inode)。 -p 在目录名后面加上斜杠(/)标识为目录。 -R 递归地列出目录及其子目录中的文件属性。 -s 显示文件或目录的大小(以块为单位)。 -t 按修改时间排序列出文件和目录。 -u 按访问时间(atime)排序列出文件和目录。 -c 以更简洁的格式显示文件属性,只显示文件名,不显示详细信息。 -g 显示文件所属组的属性信息。 -n 不执行排序操作,按文件在目录中的原始顺序列出。 -F 在文件名后面加上特殊符号,标识文件类型。 -d 仅列出目录的属性信息,而不是目录中的内容。 修改文件权限:
chmod permissions filename:
修改文件的权限。chown user:group filename:
更改文件的所有者和所属用户组。修改文件时间戳:
touch filename:
更新文件的访问时间和修改时间。touch -a filename:
只更新文件的访问时间。touch -m filename:
只更新文件的修改时间。复制、移动和重命名文件:
cp source_file destination_file:
复制文件到目标位置。mv old_filename new_filename:
移动或重命名文件。删除文件:
rm filename:
删除文件。rm -rf directory:
递归删除目录及其内容。查找文件:
find directory -name filename:
在指定目录及其子目录中搜索指定的文件。locate filename:
通过文件数据库快速查找文件。查看文件内容:
cat filename:
显示文件的内容。more filename:
逐页显示文件的内容。less filename:
交互式地显示文件的内容。文件压缩和解压缩:
tar -czvf archive.tar.gz file1 file2:
将文件打包为 gzip 压缩的 tar 文件。tar -xzvf archive.tar.gz:
解压缩 gzip 压缩的 tar 文件。常见的
tar命令选项以及它们的解释:
选项 解释 -c 创建(Create).tar 格式的包文件。 -x 解压缩(eXtract).tar 格式的包文件。 -f 指定包文件的名称。例如, tar -cf archive.tar file1 file2表示创建名为archive.tar的包文件,并包含file1和file2。-v 显示详细信息(Verbose),在处理文件时显示正在执行的操作。 -z 使用 gzip 压缩或解压缩文件。 -j 使用 bzip2 压缩或解压缩文件。 -p 保留原始文件的权限和属性(Preserve)。 -t 列出(List)包文件中的文件。 -r 向包文件中追加文件。 -u 只复制包文件中比源文件新的文件(Update)。 -k 保留已存在的文件,不进行覆盖(Keep)。 -C 在指定的目录中进行操作。例如, tar -xf archive.tar -C /target_directory表示将包文件解压缩到/target_directory目录下。举几个例子:
1、创建一个包含多个文件的 tar 归档文件: tar -cf archive.tar file1 file2 file3
该命令将创建一个名为 archive.tar 的 tar 归档文件,并将文件 file1、file2 和 file3 添加到归档中。 2、创建并使用 gzip 压缩文件: tar -czf archive.tar.gz file1 file2 file3
该命令将创建一个名为 archive.tar.gz 的 tar 归档文件,并使用 gzip 压缩算法将文件压缩。 3、解压缩一个 tar 归档文件: tar -xf archive.tar
该命令将解压缩名为 archive.tar 的 tar 归档文件,并将其提取到当前目录。 4、解压缩一个 gzip 压缩的 tar 归档文件: tar -xzf archive.tar.gz
该命令将解压缩名为 archive.tar.gz 的 gzip 压缩的 tar 归档文件,并将其提取到当前目录。 5、列出 tar 归档文件中的内容: tar -tf archive.tar
该命令将列出名为 archive.tar 的 tar 归档文件中包含的文件列表。
写在最后:
使用
man tar命令来查看tar命令的完整文档,其中包含所有选项和更详细的说明。
2.5、权限管理相关操作命令
更改文件或目录的所有者:
chown:
更改文件或目录的所有者。- 用法:
chown owner_name file_or_directory更改文件或目录的所属组:
chgrp:
更改文件或目录的所属组。- 用法:
chgrp group_name file_or_directory更改文件或目录的权限:
chmod:
更改文件或目录的权限。用法:
- 使用数字形式:
chmod permissions file_or_directory- 使用符号形式:
chmod [ugoa]+[-+=]+[rwx] file_or_directory递归更改文件或目录的权限:
chmod -R:
递归更改文件或目录以及其子目录的权限。- 用法:
chmod -R permissions directory修改文件或目录的所有者和所属组:
chown:
修改文件或目录的所有者和所属组。- 用法:
chown owner_name:group_name file_or_directory查看文件或目录的权限信息:
ls -l:
显示文件或目录的详细权限信息。- 用法:
ls -l file_or_directory以特权用户运行命令:
sudo:
以超级用户权限运行指定的命令。- 用法:
sudo command修改特殊权限:
chmod +s:
设置文件的 SetUID 或 SetGID 位。chmod +t:
设置目录的粘滞位。- 用法:
chmod +s file或chmod +t directory改变文件或目录的访问控制列表(ACL):
setfacl:
设置文件或目录的访问控制列表。getfacl:
获取文件或目录的访问控制列表。用法:
setfacl -m u:user:permissions file_or_directorysetfacl -m g:group:permissions file_or_directorygetfacl file_or_directory
2.6、 软件相关的操作命令
使用 apt-get 进行软件包管理:
apt-get update:
更新软件包列表。apt-get upgrade:
升级系统中所有已安装软件包到最新版本。apt-get install package:
安装指定的软件包。apt-get remove package:
卸载指定的软件包。apt-get purge package:
完全卸载指定的软件包,包括配置文件和依赖项。apt-get autoremove:
自动删除不再需要的依赖软件包。apt-get autoclean:
清理下载的软件包文件缓存,但保留已安装的软件包。apt-get clean:
清理下载的软件包文件缓存和已安装的软件包。apt-get check:
检查软件包的依赖关系是否完整。使用 dpkg 进行软件包管理:
dpkg -i package.deb:
安装指定的 .deb 格式软件包。dpkg -r package:
卸载指定的软件包。dpkg -P package:
完全卸载指定的软件包,包括配置文件。dpkg -l:
列出系统中所有已安装的软件包。dpkg -L package:
显示指定软件包安装的文件列表。dpkg -s package:
显示指定软件包的详细信息,包括描述、版本、依赖项等。使用 apt-cache 进行软件包查询:
apt-cache search keyword:
在可用的软件包列表中搜索指定的关键字。apt-cache show package:
显示指定软件包的详细信息,包括描述、版本、依赖项等。使用 apt-file 进行文件查询:
apt-file search filename:
在已安装的软件包列表中搜索指定的文件。apt-file update:
更新 apt-file 数据库,以便进行文件搜索。使用 snap 进行软件包管理:
snap install package:
安装指定的 Snap 软件包。snap remove package:
卸载指定的 Snap 软件包。snap list:
列出系统中所有已安装的 Snap 软件包。snap info package:
显示指定 Snap 软件包的详细信息。snap refresh:
刷新所有已安装的 Snap 软件包。使用 flatpak 进行软件包管理:
flatpak install package:
安装指定的 Flatpak 软件包。flatpak uninstall package:
卸载指定的 Flatpak 软件包。flatpak list:
列出系统中所有已安装的 Flatpak 软件包。flatpak info package:
显示指定 Flatpak 软件包的详细信息。flatpak update:
更新所有已安装的 Flatpak 软件包。对上面这几种软件管理方式进一步的解释
- apt-get:这是 Ubuntu 系统中最常用的软件包管理工具之一。它使用 APT(Advanced Packaging Tool)作为后端工具,能够从软件源(repositories)中获取软件包,并进行安装、升级、卸载等操作。apt-get 使用的软件包格式是 .deb。
- dpkg:这是 Ubuntu 系统中的底层软件包管理工具。它直接处理软件包文件(.deb),能够安装、卸载、查询已安装软件包等。dpkg 主要用于对单个软件包的管理,可以通过命令行进行操作。
- apt-cache:这是 apt-get 的附属工具之一,用于查询软件包的信息。apt-cache 可以搜索软件包、显示软件包详细信息和依赖关系等。它主要用于在软件包列表中进行搜索和查询操作。
- apt-file:这是另一个查询软件包内容的工具。与 apt-cache 不同,apt-file 可以查询未安装的软件包中的文件列表。它需要先更新数据库,然后可以根据文件名搜索软件包。
- snap:这是一种用于 Ubuntu 的软件打包和分发格式。Snap 软件包是一种自包含的、跨平台的应用格式,包含了软件及其所有依赖项。Snap 包可以通过 snap 命令进行安装、卸载和更新。Snap 软件包具有良好的隔离性和版本管理能力。
- flatpak:这是另一种用于 Ubuntu 的软件打包和分发格式。Flatpak 软件包也是一种自包含的、跨平台的应用格式,类似于 Snap 软件包。Flatpak 软件包可以通过 flatpak 命令进行安装、卸载和更新。Flatpak 软件包同样具有隔离性和版本管理能力。
2.7、进程相关操作命令
进程查看和信息:
ps:
显示当前活动进程的快照。
- 示例:
ps auxpstree:
以树状图显示进程层次关系。
- 示例:
pstree -ptop:
实时显示进程和系统资源使用情况。
- 示例:
tophtop:
交互式显示进程和系统资源使用情况。
- 示例:
htoppgrep:
根据进程名查找进程 ID。
- 示例:
pgrep -l nginxpidof:
根据进程名查找进程 ID。
- 示例:
pidof nginxpmap:
显示进程的内存映射信息。
- 示例:
pmap 1234lsof:
列出打开文件的进程。
- 示例:
lsof -p 1234fuser:
显示使用文件或套接字的进程。
- 示例:
fuser -v /path/to/file进程管理:
kill:
发送信号给指定进程。
- 示例:
kill -9 1234pkill:
根据进程名杀死进程。
- 示例:
pkill -9 nginxkillall:
根据进程名杀死所有匹配进程。
- 示例:
killall -9 nginxrenice:
修改正在运行的进程优先级。
- 示例:
renice +10 -p 1234nice:
启动新进程时设置优先级。
- 示例:
nice -n 10 commandcommand:
要运行的命令。进程监控:
top:
实时显示进程和系统资源使用情况。
- 示例:
tophtop:
交互式显示进程和系统资源使用情况。
- 示例:
htopatop:
高级系统和进程性能监控。
- 示例:
atopglances:
实时系统监控工具。
- 示例:
glancesdstat:
实时系统资源统计工具。
- 示例:
dstatvmstat:
显示虚拟内存统计信息。
- 示例:
vmstatiostat:
显示磁盘 I/O 统计信息。
- 示例:
iostatsar:
系统活动报告工具。
- 示例:
sarstrace:
跟踪系统调用和信号。
- 示例:
strace -p 1234进程通信:
pipe:
创建进程间管道通信。
- 示例:
pipesocket:
创建进程间套接字通信。
- 示例:
socketshared memory:
创建进程间共享内存通信。
- 示例:
shared memory
2.8、网络相关操作命令
网络配置和接口管理
1、ifconfig:
查看和配置网络接口信息。
选项:
-a:显示所有网络接口。
:指定要查看或配置的网络接口。
例子:
ifconfig eth0:查看或配置名为 eth0 的网络接口。2、ip:
显示和管理网络接口信息。
选项:
- address:显示或配置 IP 地址。
- link:显示或配置链路状态。
- route:显示或配置路由表。
例子:
ip address show eth0:显示 eth0 的 IP 地址信息。
ip link set eth0 up:启用 eth0 网络接口。3、nmcli:
NetworkManager 命令行工具,用于管理网络连接。
选项:
- connection:管理网络连接配置。
- device:管理网络设备。
例子:
nmcli connection show:显示所有网络连接。
nmcli device wifi list:显示可用的 Wi-Fi 网络。4、networkctl:
查看和控制 systemd 管理的网络设备和连接。
选项:
- list:显示网络设备和连接列表。
- status :显示特定网络接口的状态。
例子:
networkctl list:显示网络设备和连接列表。
networkctl status eth0:显示 eth0 网络接口的状态。网络连接和通信
1、ping:
向指定主机发送 ICMP Echo 请求。
例子:
ping google.com:向 google.com 发送 ICMP Echo 请求。
curl:命令行工具,用于发送 HTTP 请求和显示响应。
例子:
curl http://example.com:发送 GET 请求到 example.com 并显示响应。2、wget:
下载文件工具。
例子:
wget http://example.com/file.txt:下载 example.com 上的文件 file.txt。3、ssh:
通过 SSH 协议远程登录到其他主机。
例子:
ssh username@hostname:使用用户名和主机名远程登录。4、scp:
通过 SSH 协议进行安全文件传输。
例子:
scp file.txt username@hostname:~:将本地文件 file.txt 上传到远程主机的用户目录。
5、ftp:
文件传输协议客户端。
例子:
ftp hostname:连接到指定的 FTP 服务器。
6、telnet:
远程登录协议客户端。
例子:
telnet hostname:连接到指定的 Telnet 服务器。网络诊断和监控
1、netstat:
显示网络状态和统计信息。
选项:
- -a:显示所有连接和监听端口。
- -n:以数字格式显示 IP 和端口号。
- -t:显示 TCP 连接。
- -u:显示 UDP 连接。
例子:
netstat -an:显示所有连接和监听端口的数字格式。2、ss:
Socket 统计工具,显示套接字相关信息。
选项:
- -t:显示 TCP连接。
- -u:显示 UDP 连接。
- -n:以数字格式显示 IP 和端口号。
例子:
ss -t:显示所有 TCP 连接的详细信息。
3、lsof:
显示打开文件和网络连接的进程信息。
例子:
lsof -i tcp:80:显示使用 TCP 80 端口的进程信息。
4、tcpdump:网络数据包捕获工具。
例子:
tcpdump -i eth0:捕获 eth0 网络接口的数据包。
5、wireshark:
图形化网络协议分析工具。
例子:
wireshark:启动 Wireshark 图形界面。
2.9、RPM和YUM命令
RPM命令:
安装RPM软件包:
rpm -i <package.rpm>
例子:安装名为example.rpm的RPM软件包:rpm -i example.rpm升级已安装的RPM软件包:
rpm -U <package.rpm>
例子:升级名为example.rpm的RPM软件包:rpm -U example.rpm卸载RPM软件包:
rpm -e <package>
例子:卸载名为example的RPM软件包:rpm -e example查询已安装的RPM软件包:
rpm -q <package>
例子:查询名为example的RPM软件包:rpm -q example验证已安装的RPM软件包:
rpm -V <package>
例子:验证名为example的RPM软件包:rpm -V exampleYUM命令:
安装软件包:
yum install <package>
例子:安装名为example的软件包:yum install example升级软件包:
yum update <package>
例子:升级名为example的软件包:yum update example卸载软件包:
yum remove <package>
例子:卸载名为example的软件包:yum remove example查询软件包信息:
yum info <package>
例子:查询名为example的软件包信息:yum info example搜索软件包:
yum search <keyword>
例子:搜索包含关键字example的软件包:yum search example列出所有可用的软件包:
yum list
例子:列出所有可用的软件包:yum list清理YUM缓存:
yum clean all
例子:清理YUM缓存:yum clean all``以下是一些常见的YUM配置文件路径:
/etc/yum.conf: YUM的主配置文件。/etc/yum.repos.d/: 仓库配置文件的目录。
结语
这篇文章或多或少可能存在错误,欢迎各位大佬的指出
爆肝万字带你超级详细全面了解Linux命令大全的更多相关文章
- ❤️❤️爆肝3万字整理小白快速入门分布式版本管理软件:Git,图文并茂(建议收藏)--已码一万字❤️❤️
@ 目录 什么是Git SVN VS Git 什么是版本控制 安装Git 谁在操作? Git本地仓库 本地仓库构造 重点 Git基本操作 git add git commit git diff git ...
- CentOS 6.4 服务器版安装教程(超级详细图解)
附:CentOS 6.4下载地址 32位:http://mirror.centos.org/centos/6.4/isos/i386/CentOS-6.4-i386-bin-DVD1to2.torre ...
- CentOS 6.4安装(超级详细图解教程)
链接地址:http://www.osyunwei.com/archives/5855.html CentOS 6.4安装(超级详细图解教程) 附:CentOS 6.4下载地址 32位:http://m ...
- Paxos协议超级详细解释+简单实例
转载自: https://blog.csdn.net/cnh294141800/article/details/53768464 Paxos协议超级详细解释+简单实例 Basic-Paxos算法 ...
- 利用Python实现FGO自动战斗脚本,再也不用爆肝啦~
Fate/Grand Order(非的肝不过欧的)作为索尼为了拯救自己不倒闭而开发的面向月厨的骗氪养成抽卡爆肝游戏,居然没有像隔壁<阴阳师>的自动战斗系统(看看别人现在都自带脚本了).毕竟 ...
- poj 2104 K-th Number 主席树+超级详细解释
poj 2104 K-th Number 主席树+超级详细解释 传送门:K-th Number 题目大意:给出一段数列,让你求[L,R]区间内第几大的数字! 在这里先介绍一下主席树! 如果想了解什么是 ...
- 手把手Maven搭建SpringMVC+Spring+MyBatis框架(超级详细版)
手把手Maven搭建SpringMVC+Spring+MyBatis框架(超级详细版) SSM(Spring+SpringMVC+Mybatis),目前较为主流的企业级架构方案.标准的MVC设计模式, ...
- RHEL 6.3安装(超级详细图解教程)[转载]
附:RHEL6.3下载地址 32位:http://rhel.ieesee.net/uingei/rhel-server-6.3-i386-dvd.iso 64位:http://rhel.iee ...
- MySQL 8.0.12 基于Windows 安装教程(超级详细)
MySQL 8.0.12 基于Windows 安装教程(超级详细) (一步一步来,装不了你找我!) 本教程仅适用Windows系统,如果你原本装了没装上,一定要先删除原本的数据库,执行:mysqld ...
- 超级详细使用Webpack4.X 搭建H5开发环境
超级详细使用Webpack4.X 搭建H5开发环境 会撸码的小马 关注 2018.05.29 17:17* 字数 603 阅读 6453评论 0喜欢 5 很久没弄博客了,这两天有点时间来搞一下最近在弄 ...
随机推荐
- Vue2数据驱动渲染(render、update)
上一篇文章我们介绍了 Vue2模版编译原理,这一章我们的目标是弄清楚模版 template和响应式数据是如何渲染成最终的DOM.数据更新驱动视图变化这部分后期会单独讲解 我们先看一下模版和响应式数据是 ...
- IDEAL部署外部tomcat及其乱码解决
控制台tomca乱码问题: 本人使用tomcat9为例 1.启动信息有中文乱码: 原因:tomcat采用的是utf-8,而windows默认是GBK 修改java.util.logging.Conso ...
- Luogu P2574 XOR的艺术 P3870 [TJOI2009]开关 P2846 [USACO08NOV]光开关Light Switching SP7259 LITE - Light Switching
四倍经验题 简单线段树qwq(那你怎么还调了好几个小时) 修改:\(ans[cur]=(r-l+1-ans[cur]);\) 点表示的区间有多长就是有多少盏灯 亮着的关掉 暗的开启 就是上述语句了. ...
- xtrabackup8.0.27备份失败
问题描述:mysql8.0.27备份出现中断,重新备份发现xtrabackup备份失败,xtrabackup与mysql版本不匹配,后来想起来时mysql进行了升级,8.0.27->8.0.29 ...
- DES算法图解、密码学
- Pwn系列之Protostar靶场 Stack6题解
源码如下: #include <stdlib.h> #include <unistd.h> #include <stdio.h> #include <stri ...
- 2023-02-25:请用go语言调用ffmpeg,解码mp4文件并保存为YUV420SP格式文件,YUV420P不要转换成YUV420SP。
2023-02-25:请用go语言调用ffmpeg,解码mp4文件并保存为YUV420SP格式文件,YUV420P不要转换成YUV420SP. 答案2023-02-25: 使用 github.com/ ...
- 2022-05-23:给定一个数组arr,你可以随意挑选其中的数字, 但是你挑选的数中,任何两个数a和b,必须Math.abs(a - b) > 1。 返回你最多能挑选几个数。 来自美团。
2022-05-23:给定一个数组arr,你可以随意挑选其中的数字, 但是你挑选的数中,任何两个数a和b,必须Math.abs(a - b) > 1. 返回你最多能挑选几个数. 来自美团. 答案 ...
- 2022-02-18:最大休假次数。 力扣想让一个最优秀的员工在 N 个城市间旅行来收集算法问题
2022-02-18:最大休假次数. 力扣想让一个最优秀的员工在 N 个城市间旅行来收集算法问题. 但只工作不玩耍,聪明的孩子也会变傻,所以您可以在某些特定的城市和星期休假. 您的工作就是安排旅行使得 ...
- 2021-11-14:Fizz Buzz。给你一个整数 n ,找出从 1 到 n 各个整数的 Fizz Buzz 表示,并用字符串数组 answer(下标从 1 开始)返回结果,其中:answer[i
2021-11-14:Fizz Buzz.给你一个整数 n ,找出从 1 到 n 各个整数的 Fizz Buzz 表示,并用字符串数组 answer(下标从 1 开始)返回结果,其中:answer[i ...