在 Ubuntu 下设置永久 alias 命令别名

操作环境

master@ubuntu:~$ lsb_release -a
No LSB modules are available.
Distributor ID:    Ubuntu
Description:    Ubuntu 16.04.6 LTS
Release:    16.04
Codename:    xenial

为什么 2020 年了我还在使用 Ubuntu 16.04?
因为 Ubuntu 16.04 是我最先接触到 Ubuntu 操作系统,这种感觉就像初恋一样,没有什么原因。

继续阅读“在 Ubuntu 下设置永久 alias 命令别名”

WordPress插件开发:一个入门Demo

操作环境

服务器操作系统:Ubuntu 16.04
Web 服务器:Apache2
WordPress 版本:5.3.2
WordPress 主题:Twenty Sixteen(版本:2.0)

项目说明

WordPress 支持以插件的方式扩展其功能。本文就编写一个 WordPress 插件的样例程序,介绍 WordPress 插件的头部格式并实现一个修改“继续阅读”标签显示的提示文字的功能。

继续阅读“WordPress插件开发:一个入门Demo”

2020 年研究生入学考试数学一选择题第 7 题解析

一、题目

设 $A$, $B$, $C$ 为三个随机事件,且 $P(A)$ $=$ $P(B)$ $=$ $P(C)$ $=$ $\frac{1}{4}$, $P(AB)$ $=$ $0$, $P(AC)$ $=$ $P(BC)$ $=$ $\frac{1}{12}$, 则 $A$, $B$, $C$ 中恰有一个发生的概率为 ( )

A. $\frac{3}{4}$

B. $\frac{2}{3}$

C. $\frac{1}{2}$

D. $\frac{5}{12}$

继续阅读“2020 年研究生入学考试数学一选择题第 7 题解析”

解决 Python3 报错:AttributeError module ‘upyun’ has no attribute ‘UpYun’

操作背景

操作系统:Windows 7 中文家庭版 64 位

Python 版本:Python 3.6.8rc1

报错详情

我使用又拍云 API 和 Python 写了一个程序,该程序需要用到又拍云的 Python 模块 upyun. 但是,今天我将该程序复制到另一个文件夹下后,再运行却报错:

AttributeError: module 'upyun' has no attribute 'UpYun'
继续阅读“解决 Python3 报错:AttributeError module ‘upyun’ has no attribute ‘UpYun’”

微软今日起停止为 Windows 7 提供支持:一个时代的落幕

据微软官网消息[1],微软对 Windows 7 的支持于 2020 年 01 月 14 日正式终止。根据以往的经验,除非将来 Windows 7 被发现存在特别严重的漏洞并影响了一定数量的用户,否则微软不会再向 Windows 7 用户提供安全更新。而微软对 Windows 7 的主流更新已于 2015 年 01 月 14 日停止,主流更新的停止意味着微软不会再为 Windows 7 系统引入新的功能特性。

继续阅读“微软今日起停止为 Windows 7 提供支持:一个时代的落幕”

手动覆盖更新 WordPress 程序和插件

操作背景

最近从国内访问 wordpress.org 会提示 “429 Too Many Requests”, 而且,由于 WordPress 程序和插件更新时默认都是从 wordpress.org 下载文件,所以更新 WordPress 程序和插件时也是提示 “Too Many Requests”, 无法完成更新。但是,为了站点的安全,必须保持程序版本是较新的,因此只能手动更新。

以下是具体操作过程。

准备工作

在 WordPress 中文官网下载所需版本的 WordPress 程序和 WordPress 插件:

https://cn.wordpress.org

通过 FTP 或者 Wget 将上述文件上传到服务器。

手动更新 WordPress 程序

解压 wordpress 程序压缩包。

首先,删除该压缩包中的 wp-content 文件夹及文件,因为该文件夹中保存的是我们上传的媒体文件,安装的插件等,是 WordPress 程序本身不包含的数据,不能被覆盖:

rm -rf wp-content/

将当前站点目录中的 wp-content 文件夹及文件复制一份做备份:

cp -p -R wp-content/ /var/www/html/bak/

开始覆盖:

注:使用下面的命令执行覆盖操作过程中可能会产生大量询问是否确认覆盖的提示信息,解决方案在这里

cp -R -f wordpress/* /var/www/html/wordpress/

覆盖操作完成后,再次登陆 WordPress 会提示“需要升级数据库”:

图 1

点击“升级WordPress数据库”按钮即可完成数据库的升级:

图 2

点击“继续”按钮即可回到 WordPress 管理后台,至此,对 WordPress 程序的手动覆盖升级已完成。

手动更新 WordPress 插件

WordPress 的插件都安装在 wp-content/plugins 目录下。

首先,在 WordPress 的管理后台中停用需要更新的插件,并删除该插件。

之后,将下载的插件程序解压并移动到 wp-content/plugins 目录下。最后,在管理后台中启用该插件即可。

也可以将从 WordPress.org 下载下来的插件压缩包 (一般是 .zip 格式) 放到 WordPress 的插件目录 wp-content/plugins 下,然后使用如下命令解压即可自动覆盖同路径下的同名文件,达到更新插件的目的:

unzip -o plugins.zip

上述命令中 -o 参数的作用是 “overwrite files WITHOUT prompting”, 即“覆盖文件而不提醒”。

备注

手动更新操作具有一定的风险性,更新之前请务必确保已完成数据库备份,网站文件备份,硬盘镜像备份等保障措施,确保一旦有关操作执行效果未达到预期可以在较短时间内回滚数据,恢复到执行更新操作之前的状态。

EOF

使用 cp 命令覆盖文件时不显示提示信息的方法

操作环境

CentOS 7

问题分析

在使用 cp 命令覆盖文件时,即使加了 -f 参数系统仍然会询问是否覆盖,例如:

cp -R -f 1/* 2/
cp: overwrite ‘2/1.txt’?

使用 alias 命令查看别名发现存在如下别名:

alias cp='cp -i'

这就意味着即使我们输入的是 cp, 但执行时仍然执行的是 cp -i.

使用 cp --help 查看 cp 命令的帮助文档:

-f, --force if an existing destination file cannot be
 opened, remove it and try again (this option
 is ignored when the -n option is also used)
-i, --interactive prompt before overwrite (overrides a previous -n
 option)

从帮助文档可以看到,-i 参数会使系统对每一次覆盖操作都向用户发出提示信息。

解决方案

输入 vi ~/.bashrc 编辑 .bashrc 文件,将其中的 alias cp='cp -i'# 注释掉。

最后,退出当前登陆系统的账户,重新登陆即可。

备注

alias cp='cp -i' 这个别名是一项很重要的安全措施,或许可以在关键时刻阻止我们的误操作,因此,平时还是保留这个别名为好。

EOF

Linus Torvalds: “我不再是一名程序员了”

在最近于法国里昂举办的 Open Source Summit Europe 讨论会上,Linux 创始人 Linus Torvalds 讲述了他目前的工作以及他对于自己工作的看法。

Linus Torvalds 说:

“I don’t know coding at all anymore. Most of the code I write is in my e-mails. So somebody sends me a patch … I [reply with] pseudo code. I’m so used to editing patches now I sometimes edit patches and send out the patch without having ever tested it. I literally wrote it in the mail and say, ‘I think this is how it should be done,’ but this is what I do, I am not a programmer. “

(参考译文):

“我已经完全不知道怎么写代码了,我现在大都是在电子邮件里写代码。当有人发给我一个补丁的时候,我会用伪代码回复他,我通常是编辑并且回复一个补丁而不去测试它。我在邮件里写的都是文字表述,我会这么说:“我认为应该这么做。”这就是我所做的工作,我已经不是一名程序员了。”

References:

[1]. Linus Torvalds: ‘I’m not a programmer anymore’

https://www.zdnet.com/article/linus-torvalds-im-not-a-programmer-anymore/


荒原之梦网全部内容均为原创,提供了涵盖考研数学基础知识、考研数学练习题、考研数学真题等方面,大量精心研发的学习资源。

豫ICP备17023611号-1 | 公网安备 - 荒原之梦 豫公网安备41142502000132号
Copyright©2017-2026 ZhaoKaifeng.com 版权所有 All Rights Reserved.

豫ICP备17023611号-1
  豫公网安备41142502000132号
Copyright©2026   ZhaoKaifeng.com   All Rights Reserved.

荒原之梦 自豪地采用WordPress