Abhishek Prakash 发布的文章

对于那些想从舒适的 Windows 中享受 Linux 命令行的人来说,WSL(Windows Subsystem for Linux) 是一个方便的工具。

当你 在 Windows 上使用 WSL 安装 Linux 时,会要求你创建一个用户名和密码。当你在 WSL 上启动 Linux 时,这个用户会自动登录。

现在的问题是,如果你有一段时间没有使用它,你可能会忘记 WSL 的账户密码。而如果你要使用 sudo 的命令,这将成为一个问题,因为这里你需要输入密码。

不要担心。你可以很容易地重置它。

在 Ubuntu 或任何其他 Linux 发行版上重置遗忘的 WSL 密码

要在 WSL 中重设 Linux 密码,你需要:

  • 将默认用户切换为 root
  • 重置普通用户的密码
  • 将默认用户切换回普通用户

让我向你展示详细的步骤和截图。

步骤 1:将默认用户切换为 root

记下你的普通/常规用户名将是明智之举。如你所见,我的普通帐户的用户名是 abhishek

Note down the account username

WSL 中的 root 用户是无锁的,没有设置密码。这意味着你可以切换到 root 用户,然后利用 root 的能力来重置密码。

由于你不记得帐户密码,切换到 root 用户是通过改变你的 Linux WSL 应用的配置,使其默认使用 root 用户来完成。

这是通过 Windows 命令提示符完成的,你需要知道你的 Linux 发行版需要运行哪个命令。

这个信息通常在 Windows 商店 中的发行版应用的描述中提供。这是你首次下载发行版的地方。

Know the command to run for your distribution app

从 Windows 菜单中,启动命令提示符:

Start Command Prompt

在这里,以这种方式使用你的发行版的命令。如果你使用的是 Windows 商店中的 Ubuntu 应用,那么该命令将是:

ubuntu config --default-user root

截图中,我正在使用 Windows 商店中的 Ubuntu 20.04 应用。所以,我使用了 ubuntu2004 命令。

Set root as default user in Linux app’s configuration

为了减少你的麻烦,我在这个表格中列出了一些发行版和它们各自的命令:

发行版应用Windows 命令
Ubuntuubuntu config –default-user root
Ubuntu 20.04ubuntu2004 config –default-user root
Ubuntu 18.04ubuntu1804 config –default-user root
Debiandebian config –default-user root
Kali Linuxkali config –default-user root

步骤 2:重设帐户密码

现在,如果你启动 Linux 发行程序,你应该以 root 身份登录。你可以重新设置普通用户帐户的密码。

你还记得 WSL 中的用户名吗?(LCTT 译注:请使用你的“用户名”替换下列命令中的 username)如果没有,你可以随时检查 /home 目录的内容。当你有了用户名后,使用这个命令:

passwd username

它将要求你输入一个新的密码。**当你输入时,屏幕上将不会显示任何内容。这很正常。只要输入新的密码,然后点击回车就可以了。**你必须重新输入新的密码来确认,当你输入密码时,屏幕上也不会显示任何东西。

Reset the password for the regular user

恭喜你。用户账户的密码已经被重置。但你还没有完成。默认用户仍然是 root。你应该把它改回你的普通用户帐户,否则它将一直以 root 用户的身份登录。

步骤 3:再次将普通用户设置为默认用户

你需要你在上一步中用 passwd 命令 使用的普通帐户用户名。

再次启动 Windows 命令提示符。使用你的发行版命令,方式与第 1 步中类似。然而,这一次,用普通用户代替 root

ubuntu config --default-user username

Set regular user as default user

现在,当你在 WSL 中启动你的 Linux 发行版时,你将以普通用户的身份登录。你已经重新设置了密码,可以用它来运行 sudo 命令。

如果你将来再次忘记了密码,你知道重置密码的步骤。

如果重设 WSL 密码如此简单,这难道不是一种安全风险吗?

并非如此。你需要有对计算机的物理访问权以及对 Windows 帐户的访问权。如果有人已经有这么多的访问权,他/她可以做很多事情,而不仅仅是改变 WSL 中的 Linux 密码。

你是否能够重新设置 WSL 密码?

我给了你命令并解释了步骤。我希望这对你有帮助,并能够在 WSL 中重置你的 Linux 发行版的密码。

如果你仍然遇到问题,或者你对这个话题有疑问,请随时在评论区提问。


via: https://itsfoss.com/reset-linux-password-wsl/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。

这并不意味着没有其他这样的文本编辑器。Vim 的现代增强版 Neovim,是许多这样的例子之一。

按照同样的思路,我想介绍另一个基于终端的文本编辑器,叫做 Helix Editor。

Helix,一个用 Rust 编写的现代文本编辑器

Helix 是用 Rust 编写的,使用 Tree-sitter 进行语法高亮。开发者声称,它比正则表达式高亮更快,因为 Tree-sitter 像编译器一样将代码解析成语法树,从而给出更多的代码结构信息。

你可以跟踪局部变量,计算缩进和操作选择来选择语法节点。它足够强大,即使有语法错误也能产生结果。

Helix 的主要亮点是“多重选择”,这是基于 Kakoune 的。

内置的语言服务器支持提供上下文感知补全、诊断和代码操作。

在 Linux 上安装 Helix

对于 Arch 和 Manjaro 用户来说,Helix 在 AUR 中有两个包:

  • helix-bin: 包含来自 GitHub 发布的预构建二进制文件
  • helix-git: 构建该仓库的主分支

作为一个 Arch 用户,我相信你可能已经知道 如何使用 AUR 安装应用

对于其他 Linux 发行版,你必须使用 Cargo。Cargo 是 Rust 软件包管理器。有了它,你可以安装 Rust 包。可以认为它相当于 Python 的 PIP。

你应该能够使用你的发行版的包管理器来安装 Cargo。在基于 Ubuntu 的发行版上,可以这样安装 Cargo:

sudo apt install cargo

接下来,你要克隆 Helix 仓库:

git clone --recurse-submodules --shallow-submodules -j8 https://github.com/helix-editor/helix

进入克隆的目录中:

cd helix

现在用 cargo 来安装 Helix:

cargo install --path helix-term --features "embed_runtime"

最后一步是将 hx 二进制文件添加到 PATH 变量中,这样你就可以从任何地方运行它。这应该被添加到你的 bashrc 或 bash 配置文件中。

export PATH=”$HOME/.cargo/bin:$PATH”

现在都设置好了,你应该可以通过在终端输入 hx 来使用编辑器。

你可以在 Helix 的文档页上找到使用 Helix 的键盘快捷键:

它与 Vim 或 Neovim 相比如何?我无法说。我可以用 Vim 进行基本的编辑,但我不是 Vim 忍者。如果你是一个信奉 Vim(或 Emacs)的人,请你试试 Helix 并自己判断。


via: https://itsfoss.com/helix-editor/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Code Blocks 是一个用 C++ 编写的开源 IDE,非常适合 C、C++ 和 Fortran 开发。它是跨平台的,可以在 Linux、macOS 和 Windows 上运行。

Code Blocks 是轻量级和快速的。它支持工作区、多目标项目、工作区内的项目间依赖关系。

你可以得到语法高亮、代码折叠、标签式界面、类浏览器、智能缩进等功能。你还可以通过插件扩展 IDE 的功能。

在本教程中,你将学习如何在基于 Ubuntu 的 Linux 发行版上安装 Code Blocks。

注意

Code Blocks 也可以在 Ubuntu 软件中心找到。然而,从 Ubuntu 21.04 开始,从 Ubuntu 软件中心以图形方式安装 Code Blocks 会安装一个 codeblocks-common 软件包,而不是图形化 IDE。因而你不能看到安装在你系统上的 Code Blocks 以运行。由于这个原因,我建议采取终端的方式在 Ubuntu 上安装 Code Blocks。

在基于 Ubuntu 的 Linux 发行版上安装 Code Blocks

Code Blocks IDE 在所有 Ubuntu 版本的 universe 库中都有。虽然它通常是默认启用的,但先启用 universe 仓库也无妨:

sudo add-apt-repository universe

更新软件包缓存,这样系统就能知道新添加的仓库中的额外软件包的可用性:

sudo apt update

最后,你可以使用 apt install 命令在基于 Ubuntu 的发行版上安装 Code Blocks:

sudo apt install codeblocks

建议你也安装额外的插件,以便从 Code Blocks IDE 中获得更多。你可以使用 codeblocks-contrib 包来安装它们:

sudo apt install codeblocks-contrib

如何使用 Code Blocks

在系统菜单中搜索 “Code Blocks”。这是在 Ubuntu 默认的 GNOME 版本中的样子:

当你第一次启动 Code Blocks 时,它会寻找你系统中所有可用的编译器,并将其添加到路径中,这样你就不用自己去配置它了。

在我的例子中,我的 Ubuntu 系统上已经安装了 gcc,Code Blocks 很好地识别了它。

Code Blocks 的用户界面绝对不够现代,但请记住,这个 IDE 是轻量级的,它几乎消耗不到 50MB 的内存。

如果你曾经使用过像 Eclipse 这样的其他 IDE,你就不会觉得使用 Code Block 有什么困难。你可以写你的代码并把它们组织在项目中。

构建、运行并构建和运行按钮一起放在顶部。

当你运行代码时,它会打开一个新的终端窗口来显示输出。

这就是你需要的关于 Code Blocks 的最少信息。剩下的留给你,你可以通过浏览它的 维基用户手册 来进一步探索它。

拥有一个 IDE 可以使 在 Linux 上运行 C 或 C++ 程序 更容易。Eclipse 是一个很好的 IDE,但它比 Code Blocks 要消耗更多的系统资源。当然,最后,重要的是你的选择。


via: https://itsfoss.com/install-code-blocks-ubuntu/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

想在 Linux 终端中做一些有趣的事情吗?把一张普通的图片转换成 ASCII 艺术怎么样?

你知道 什么是 ASCII 么?它是一个标准,在 8 位码中的 256 个空位上分配字母、数字和其他字符。ASCII 艺术是一个由可打印的 ASCII 字符组成的图形。基本上,它是由一堆字母、数字和特殊字符组成的。

你可能见过有人 以 ASCII 格式显示他们发行版的标志,像这样:

这很酷,对吗?把一张普通的图片转换成 ASCII 艺术怎么样?这就是在这篇文章中要探讨的问题。

Ascii Image Converter

顾名思义,Ascii Image Converter 是一个将图片转换为 ASCII 艺术的工具。它是一个用 Go 语言编写的基于命令行的工具,它打印出提供给它的图片的ASCII版本。

你可能认不出我,但下面的图片中的 ASCII 版就是我。那是我的 8 位头像。

该工具支持以下格式的输入图像:

  • JPEG/JPG
  • PNG
  • BMP
  • WEBP
  • TIFF/TIF

让我们看看如何安装和使用它。

在 Linux 上安装 Ascii Image Converter

这个有趣的工具也可以在 Windows 上使用,但我不打算这么做。在本教程中,让我们坚持使用 Linux。

如果你的发行版中启用了 Snap,你可以用下面的命令轻松地安装它的 snap 包:

sudo snap install ascii-image-converter

你也可以从它的发布页面下载 Linux 的可执行文件,并把可执行文件放在 /usr/local/bin/ 目录下。这样,你就能像普通的 Linux 命令一样运行它。如果你想知道为什么会这样,请了解一下 Linux 目录层次结构

使用 Ascii Image Converter

使用很简单。安装后,你只需要提供你想转换的图像的路径。

ascii-image-converter path_to_image

你也可以提供图片的 URL,直接从网上把图片转换成 ASCII。

这是我的个人资料照片转换成 ASCII 格式。我把我的原始照片放在这里供大家参考。

你也可以转换成彩色的 ASCII。

ascii-image-converter -C path_to_image

你可以通过提供它们的路径将多个图像转换为 ASCII。它将在终端显示器上一个接一个地打印 ASCII 版本。

也有一个选项可以保存生成的 ASCII 艺术。在旧版本中,它只会被保存为文本文件,而不是图像。开发者 Zoraiz Hassan 发布了一个新版本,现在该工具默认将生成的 ASCII 图像保存为 PNG 格式。

ascii-image-converter path_to_image -s .

还有一些可用的选项,比如给输出一个特定的尺寸,使用更多的 ASCII 字符,或者使用你自己的字符集来打印 ASCII 艺术。你可以在 项目的仓库 上阅读相关内容。

喜欢它吗?

你喜欢更多的 ASCII 相关的东西吗?那么 在 Linux 上玩 ASCII 游戏 怎么样?是的,你完全可以这么做。

如果你喜欢在终端做实验,你可能会喜欢这个工具。虽然我不知道 ASCII 转换后的图像能有什么好的实际用途。有什么想法吗?


via: https://itsfoss.com/ascii-image-converter/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

有一天,我试图在一个新的 Ubuntu 系统上编译一个程序,当我试图使用 make 命令时,它向我抛出一个错误:

The program 'make' is currently not installed. You can install it by typing:
sudo apt install make

这表明 make 命令还没有安装。你可以用这些命令在 Ubuntu 上逐步安装 make

sudo apt update
sudo apt install make

第一个命令是更新本地的软件包缓存。如果是一个新安装的 Ubuntu 系统,这是很有必要的。有了刷新的软件包缓存,你的系统就会知道应该从哪个仓库下载 make 包。

并验证 make 是否已经正确安装:

make --version

Checking make version

在 Ubuntu 上安装 make 的更好方法

安装 make 命令的一个更好的方法是使用 build-essential 包。这个包包含 makegccg++ 和其他一些编译器和开发工具。

sudo apt install build-essential

Installing Build Essential package

安装了这个 build-essential 包后,你就可以在 Linux 中轻松地运行 C/C++ 程序

如果 make 已经安装了,但它没有工作怎么办?

在一些罕见的情况下,可能会发生 make 已经安装了,但却无法工作的情况。

其原因是 make 命令不在 $PATH 变量中。你可以用这个命令重新安装 make

sudo apt install --reinstall make

如果这不起作用,你可以尝试 手动添加二进制文件到你的 PATH 中,但这应该不需要手动。

我希望这个快速提示能帮助你。仍然有问题或对相关主题有疑问?请随时在评论区留言。


via: https://itsfoss.com/make-command-not-found-ubuntu/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

有几种方法可以测试和提高你的打字速度。你可以使用在线工具,在桌面上安装专门的应用,或者在 Linux 终端测试。

Linux 终端?是的。从 浏览互联网玩游戏,你可以在强大的 Linux 终端中做 许多有趣的事情。测试你的打字速度就是其中之一。

Ttyper:基于终端的打字测试工具

Ttyper 是一个用 Rust 编写的工具,允许你练习打字。

它给出了一些最常见的英语单词的随机选择。打出的正确单词用绿色突出显示,错误的用红色突出显示,而且这是实时发生的。你可以按退格键纠正单词,但这将导致分数下降。

当你打完所有显示的单词后,你会得到你的打字速度(每分钟字数)、准确率和正确按键数的结果。如果你没有心情打完全部,你可以使用 Ctrl+C 退出 Ttyper。

你可以在这个由开发者录制的 GIF 中看到 Ttyper 的操作。

默认情况下,你有 50 个单词可以练习,但你可以用命令选项来扩大。你还可以使用一个自定义的文本文件,用它的内容来练习打字。

命令内容
ttyper200 个最常见的英语单词中的 50 个
ttyper -w 100200 个最常见的英语单词中的 100 个
ttyper -w 100 -l english10001000 个最常见的英语单词中的 100 个
ttyper text.txt内容来自用空格分隔的 test.txt

Ttyper 也专注于开发者。它支持几种编程语言,如果你是一个程序员,你可以用它来测试和改进你在编码时的打字速度。

截至目前,支持 C、Csharp、Go、HTML、Java、JavaScript、Python、Ruby 和 Rust 语言。

你可以通过以下方式改变语言:

ttyper -l html

顺便说一下,“Ttyper” 中的双 “T” 不是一个打字错误。它是故意的,因为TTY(TeleTYpewriter)代表 终端模拟器,表明它是一个终端工具。

在 Linux 上安装 Ttyper

Ttyper 是用 Rust 构建的,你可以把它安装在任何支持 Rust 编程语言及其 Cargo 软件包管理器的 Linux 发行版上。

Cargo 相当于 Python 中的 PIP。它有一个中央仓库,你可以用 Cargo 轻松地下载和安装 Rust 包和它的依赖项。

我将添加在基于 Ubuntu 的 Linux 发行版上安装 Cargo 的说明。你应该可以用你的发行版的包管理器来安装它。

请确保你在 Ubuntu 上启用了 universe 仓库。你可以用这个命令来安装 Cargo:

sudo apt install cargo

它将安装 Cargo 包管理器和 Rust 语言的 rustc 包。

当你的系统安装了 Cargo,就可以用这个命令来安装 Ttyper:

cargo install ttyper

这将在你的主目录下的 .cargo/bin 目录中添加一个可执行 Rust 文件。它将在软件包安装输出的最后显示。

你可以切换到这个目录:

cd ~/.cargo/bin

并运行 ttyper 可执行文件:

./ttyper

当然,这不是很方便。这就是为什么你应该 把这个目录添加到 PATH 变量中。如果你熟悉 Linux 的命令行,你可以很容易做到这一点。

不幸的是,我不能在这里给你确切的命令,因为你需要提供这个目录的绝对路径,而这个路径名称会根据你的用户名而不同。例如,对我来说,它是 /home/abhishek/.cargo/bin。这个绝对路径对你来说会有所不同。

我建议阅读 绝对路径和相对路径 以了解更多关于这个问题的信息。

你可以通过删除二进制文件来卸载 Ttyper,或者用 Cargo 命令来卸载:

cargo uninstall ttyper

如果你喜欢这个灵巧的终端工具,在 GitHub 上给它加星 以感谢开发者的努力。

正如我在本文开头提到的,你可以在终端做很多很酷的事情。如果你想给你的同事一个惊喜,也许你可以试试 完全在 Linux 终端中制作幻灯片。


via: https://itsfoss.com/ttyper/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出