我希望 systemd 服务处理分叉(我的文件本身不处理分叉。所以我依靠 systemd 来处理)
我的 .service 文件:
[Unit]
Description=swamp services management service
After=syslog.target
[Service]
Type=forking
ExecStart=/usr/bin/swamp
[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)
题
Type=forking为我想要实现的目标指定足够了吗?或者它是否类似于新贵中的分叉,它实际上告诉新贵(如果我理解正确,不确定我是否这样做,我是编写 initscripts 的新手)我的服务将处理分叉/守护进程。
我正在尝试了解 Linux 进程。我对各自的术语感到困惑pid_max,ulimit -u和thread_max。
这些术语之间究竟有什么区别?有人可以澄清这些差异吗?
我想以这样一种方式创建一个目录,我需要将目录标记为从a到z。里面每个目录下,我需要创建子目录,这样它们标记为aa,ab等等。
因此,例如,对于 directory m,我的子目录将被标记为ma, mbupto mz。
我试图找出这个问题的解决方案。我想awk用于解决方案。
我的输入文件如下所示。
-bash-3.2$ cat file
ramesh
ramesh_venkat
ramesh3_venkat3
ramesh4
ramesh5
venkat
venkat3
venkat4
Run Code Online (Sandbox Code Playgroud)
我使用awk命令来提取第二个值_,如下所示。
awk -F "_" '{print $2}' file
Run Code Online (Sandbox Code Playgroud)
但是,虽然上面的命令打印了正确的值,但我的输出中却出现了空行。我有2个问题。
问题 1
如何删除输出中的空行,以便只获得venkat和venkat3输出?
如果我在 my 中使用printf而不是,我会得到我不想实现的输出。我想要这样的输出,printawkvenkatvenkat3
venkat
venkat3
Run Code Online (Sandbox Code Playgroud)
问题2
使用这些值作为关联数组或其他东西,我如何找到这些值是否实际出现在$1列中?
我想实现类似的目标,
awk -F "_" '$2==1{print $1}' file
Run Code Online (Sandbox Code Playgroud)
编辑
我没有注意到awk斯蒂芬的解决方案。它是在做我提到的同样的事情吗?
我正在尝试计算当前正在运行的 shell 或终端窗口的数量。
我试过 ps a|grep bash; ps a|grep tty;
但它可能不准确。
我有一个文件,如下所示。
<a href="http://firstlink.com" title="title1">
<a href="http://secondlink.com" title="title2">
<a href="http://thirdlink.com" title="title3">
<a href="http://fourthlink.com" title="title4">
Run Code Online (Sandbox Code Playgroud)
我正在尝试仅从上述文件中提取 URL。我正在使用以下命令。
grep -o '\".*\"' new.txt
Run Code Online (Sandbox Code Playgroud)
但是,上面的命令给了我输出,
"http://firstlink.com" title="title1">
"http://secondlink.com" title="title2">
"http://thirdlink.com" title="title3">
"http://foruthlink.com" title="title4">
Run Code Online (Sandbox Code Playgroud)
我试图只提取没有"". 所以,我的预期输出是,
http://firstlink.com
http://secondlink.com
http://thirdlink.com
http://fourthlink.com
Run Code Online (Sandbox Code Playgroud)
我应该如何更改 grep 命令?或者是否可以在 perl、awk 或 sed 命令中执行此操作?
我正在使用cURL命令下载网站的 HTML 源页面。问题是,我不想要页面中的大部分内容。我只需要源页面的前 100 行。有没有办法在前几行后停止下载页面?
目前,我有以下命令工作,但它似乎没有时间有效。
curl -r[0-1] "http://www.freebase.com/m/045c7b" > foo.txt
Run Code Online (Sandbox Code Playgroud)
我尝试将值从 更改1为.5和.05,但仍然下载了整个网页。
我正在查看执行上述命令的时间不到一秒钟。
编辑
从 的手册页中cURL,我看到“您还应该知道许多 HTTP/1.1 服务器没有启用此功能,因此当您尝试获取范围时,您将获取整个文档。 ”因此,如果服务器不支持范围查询,nix环境中是否还有其他命令可以帮助我完成我想要做的事情?
作为对我上一个问题的跟进,我决定创建如下本地用户帐户。
adduser --system --no-create-home USERNAME
Run Code Online (Sandbox Code Playgroud)
现在,我希望本地用户能够使用ssh. 根据我的理解,ssh工作如下。
假设我有 2 台机器(比如alpha和beta)。
ssh user@beta~/.ssh/authorized_keys在beta机器下。/~/.ssh在alpha机器下。现在我计划为用户实现无家。因此,假设我adduser在没有任何用户家的情况下进入beta机器,我是否仍然能够从alpha ssh 进入beta 版?
我试图更好地了解我机器中的网络设置。
主机设置
192.168.1.9.192.168.1.1。主机中的 route -n 命令将输出返回为,
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 wlan0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlan0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0
192.168.1.160 0.0.0.0 255.255.255.224 U 0 0 0 virbr2
Run Code Online (Sandbox Code Playgroud)来宾机器设置
现在,我在 KVM 中设置了一个访客操作系统,如下所示。
192.168.1.160/27.192.168.1.176DHCP 结束是192.168.1.190。我还为我的 KVM 配置执行了以下命令。
arp …Run Code Online (Sandbox Code Playgroud)如果我ip rule show在我的机器上输入命令,我得到的输出是,
0: from all lookup local
32766: from all lookup main
32767: from all lookup default
Run Code Online (Sandbox Code Playgroud)
数字0、32766和32767是什么意思?
我明白这些是一些优先级,0是特殊优先级,不能删除。
此外,如果我添加一个新策略,它将以32765的优先级创建。我的理解正确吗?
另外,我ip rule add从这里看到了一些关于优先级的信息。
实际上,由于历史原因,ip rule add 不需要优先级值,并且允许它们是非唯一的。如果用户未提供优先级,则由内核选择。如果用户创建的规则具有已经存在的优先级值,内核不会拒绝该请求。它在所有具有相同优先级的旧规则之前添加新规则。这是设计错误,不再是。而且总有一天会修复的,所以不要依赖这个功能。使用明确的优先级。