Unix & Linux

คำถาม & คำตอบสำหรับผู้ใช้ Linux, FreeBSD และระบบปฏิบัติการ Un * x อื่น ๆ

1
วิธีการตรวจสอบให้แน่ใจว่าสตริงที่ถูกสอดแทรกเข้าไปใน `การแทนที่ 'sed` จะหนี metachars ทั้งหมด
ฉันมีสคริปต์ที่อ่านข้อความกระแสและสร้างไฟล์คำสั่ง sed sed -fว่าจะดำเนินการต่อมาเป็น คำสั่ง sed ที่สร้างขึ้นมีลักษณะดังนี้: s/cid:image002\.gif@01CC3D46\.926E77E0/https:\/\/mysite.com\/files\/1922/g s/cid:image003\.gif@01CC3D46\.926E77E0/https:\/\/mysite.com\/files\/1923/g s/cid:image004\.jpg@01CC3D46\.926E77E0/https:\/\/mysite.com\/files\/1924/g สมมติว่าสคริปต์ที่สร้างsedคำสั่งมีลักษณะดังนี้: while read cid fileid do cidpat="$(echo $cid | sed -e s/\\./\\\\./g)" echo 's/'"$cidpat"'/https:\/\/mysite.com\/files\/'"$fileid"'/g' >> sedscr done ฉันจะปรับปรุงสคริปต์เพื่อให้มั่นใจว่าอักขระเมตาของ regex ทั้งหมดในcidสตริงได้รับการยกเว้นและแก้ไขอย่างถูกต้องหรือไม่
21 sed  quoting 

3
น้อยจะเป็นตัวพิมพ์เล็กและตัวพิมพ์ใหญ่เสมอ
พยายามค้นหาวิธีใช้การค้นหาแบบคำนึงถึงขนาดตัวพิมพ์ในlessฉันพบสิ่งนี้ในเซิร์ฟเวอร์ข้อผิดพลาด ดูเหมือนว่าจะตอบคำถามของฉันได้อย่างสมบูรณ์แบบ ปัญหาคือ: มันไม่ทำงานอย่างนั้นที่นี่ (openSUSE 13.1; น้อยกว่า 458) ฉันได้ aliased lessไปless -WiNSแต่ผมเปลี่ยนที่ แต่แม้กระทั่งเรียกมันว่าcommand less fileไม่เปลี่ยนแปลงอะไรเลย ฉันตรวจสอบแล้วpsว่าไม่มี-iตัวเลือกในบรรทัดคำสั่งอีกต่อไป ในขณะที่คำตอบบอกว่าความlessช่วยเหลือ (กดh) ระบุว่าฉันสามารถใช้-iภายในlessได้เช่นกัน ถ้าฉันใช้สิ่งนั้นครั้งเดียวก็lessบอกฉันว่ามันเปลี่ยนไปเป็นการค้นหาแบบตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ (นั่นคือประเภทที่ถูกต้อง: ไม่มีอะไรเปลี่ยนแปลง) ถ้าฉันใช้มันสองครั้งก็lessบอกว่ามันหันไปใช้การค้นหาแบบตัวพิมพ์ใหญ่ - เล็ก และถูกต้องแล้วมันทำงานได้ตามที่ควรตั้งแต่เริ่มต้น -iแม้ว่าการให้สองครั้งบนบรรทัดคำสั่งจะไม่ทำงาน มีอะไรเหรอ
21 less 

2
เวลาประทับของมนุษย์ที่อ่านได้บน OpenWRT
เอาต์พุตของ dmesg แสดงจำนวนวินาที + มิลลิวินาทีตั้งแต่ระบบเริ่มทำงาน [ 10.470000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 14.610000] device eth0 entered promiscuous mode [ 18.750000] cfg80211: Calling CRDA for country: DE [ 18.750000] cfg80211: Regulatory domain changed to country: DE ถาม: จะวางวินาที + มิลลิวินาทีในรูปแบบที่อ่านได้อย่างไร dmesg ของฉัน: root@OpenWrt:/tmp# dmesg -h dmesg: invalid …

5
ส่งอีเมลที่เขียนใน markdown โดยใช้ mutt
บางครั้งฉันต้องส่งรหัสในส่วนของ google-inline ข้อความไม่ได้ช่วยที่นี่; ฉันสามารถพิมพ์เป็น markdown แปลงเป็น html (โดยใช้ pandoc เป็นต้น) แนบกับ mutt as text/htmlและส่ง มีวิธีแก้ไขปัญหาที่ดีอยู่ที่นี่แต่ใช้sendmailโปรแกรมภายนอกเพื่อส่งอีเมล ฉันใช้ mutt ซึ่งมีความสามารถในการส่งอีเมลผ่าน IMAPด้วยตัวเอง
21 scripting  mutt 


2
ฉันจะดูแบบอักษรที่ดูดีขึ้นได้อย่างไรในเทอร์มินัลของฉัน (URxvt)
ฉันสังเกตเห็นว่าแบบอักษรใน URxvt ดูมีความละเอียดต่ำเล็กน้อยเมื่อเทียบกับแบบอักษรที่ฉันเห็นในเบราว์เซอร์ของฉัน ฉันสงสัยว่าฉันจะแก้ไข.Xdefaultsไฟล์ของฉันอย่างไรเพื่อให้แบบอักษรมีรายละเอียดมากขึ้นและคมชัดขึ้น อาจไม่ปรากฏในภาพนี้ แต่ฉันสามารถสังเกตเห็นความแตกต่างได้อย่างแน่นอนเมื่อมองตัวเอง: นี่คือปัจจุบันของฉัน.Xdefaults: URxvt*background: Black URxvt*foreground: White URxvt*geometry: 80x30 URxvt*scrollBar: false "URxvt.font: 9x15 !-- Xft settings -- ! Xft.dpi: 96 Xft.antialias: true Xft.rgba: rgb Xft.hinting: true Xft.hintstyle: hintfull ! -- Fonts -- ! URxvt.font:xft:Monospace:pixelsize=15 URxvt.boldfont:xft:Monospace-Bold:pixelsize=15
21 terminal  x11  fonts  urxvt 

3
Chrome ได้รับรายชื่อผู้ออกใบรับรองจากที่ไหน
ใน Fedora ฉันกำลังพูดถึงรายการที่ปรากฏเมื่อคุณไปที่การตั้งค่า> จัดการใบรับรอง> แท็บเจ้าหน้าที่ ฉันได้อ่านแล้วมันควรจะอยู่ในฐานข้อมูลที่แชร์ของ NSS แต่คำสั่งนี้จะส่งคืนรายการว่าง: [laurent@localhost nssdb]$ certutil -d sql:$HOME/.pki/nssdb -L

3
บังคับให้เจ้าของและกลุ่มสำหรับเนื้อหาของไฟล์ tar หรือไม่
ฉันต้องการสร้างไฟล์ tar ที่มีเนื้อหาเป็นของเจ้าของ: คู่ของกลุ่มที่ไม่มีอยู่ในระบบที่ไฟล์นั้นถูกสร้างขึ้นมา นี่คือทิศทางที่ฉันได้ลอง: tar ca --owner='otherowner' --group='othergroup' mydata.tgz mydata และเมื่อใช้คำสั่งนี้ฉันได้รับข้อผิดพลาดต่อไปนี้: tar: otherowner: Invalid owner tar: Error is not recoverable: exiting now มีวิธีบังคับให้ tar ยอมรับเจ้าของหรือไม่: กลุ่มแม้ว่าจะไม่มีอยู่ในระบบที่ไฟล์ถูกสร้างขึ้น?
21 permissions  users  tar 

2
การติดตั้ง Debian โดยไม่มี GUI สำหรับเว็บเซิร์ฟเวอร์
คำถามนี้ถูกย้ายจาก Server Fault เนื่องจากสามารถตอบได้ใน Unix & Linux Stack Exchange อพยพ 7 ปีที่ผ่านมา ฉันไม่คุ้นเคยกับ Debian (ชัด) ดังนั้นฉันจึงดาวน์โหลด ISO แบบสดโดยคิดว่ามันอาจช่วยฉันได้ จาก GUI แบบสดฉันคลิกสองครั้งที่ไอคอนติดตั้งบนเดสก์ท็อปและดำเนินการต่อ - ทำให้ฉันติดตั้งกับ GNOME และซอฟต์แวร์อื่น ๆ ที่ไม่มีธุรกิจอยู่บนเว็บเซิร์ฟเวอร์ โดยทั่วไป ดังนั้นส่วนแรกของคำถามของฉันคือฉันสามารถติดตั้งเวอร์ชันพื้นฐาน / ไม่ใช่แบบ GUI จากแผ่นดิสก์สดได้หรือไม่? ถ้าเป็นเช่นนั้นได้อย่างไร ถ้าไม่มีใครบอกให้ฉันดาวน์โหลดถูกต้องสำหรับรุ่น amd64 บิตได้หรือไม่? คำถามด้าน - จะเกิดขึ้นกับ Debian บน Ubuntu จริง ๆ จะให้ผลที่เพิ่มประสิทธิภาพมากขึ้นหรือไม่ ฉันต้องการที่จะอุ่นเครื่องให้กับเดเบียนเพราะมีโอกาสสูงที่ฉันจะได้พบกับมันแบบมืออาชีพดังนั้นมันจึงเป็นประสบการณ์การเรียนรู้ที่ดี หากไม่มีความแตกต่างระหว่างมันกับรุ่นเซิร์ฟเวอร์ของ Ubuntu ฉันอาจทำอย่างนั้นเพราะฉันรู้ว่า …

4
ส่งต่อไปยังไคลเอนต์ VPN หรือไม่
ฉันพบกับปริศนานิดหน่อยและไม่เคยโชคดีในการหาทางออก ตอนนี้ฉัน (เศร้า) เชื่อมต่อกับเน็ตผ่าน Verizon 3G พวกเขากรองทราฟฟิกที่เข้ามาทั้งหมดดังนั้นจึงเป็นไปไม่ได้ที่ฉันจะเปิดพอร์ตเพื่อยอมรับการเชื่อมต่อ ขณะนี้ฉันมีเครื่องเสมือนของ Linux ที่ linode.com และความคิดนั้นทำให้ฉันติดตั้งpptpdและพยายามทำการiptablesส่งต่อพอร์ต ฉันได้pptpdติดตั้งและเครื่องที่บ้านของฉันเชื่อมต่ออย่างมีความสุข ที่กล่าวว่าต่อไปนี้เป็นข้อมูลทั่วไป: เซิร์ฟเวอร์ (Debian) WAN IP: xxxx บน eth0 - pptpd IP: yyy1 บน ppp0 - IP VPN ของไคลเอ็นต์: yyy100 ในการตรวจสอบว่าฉันไม่ได้บ้าฉันพยายามเชื่อมต่อจากเซิร์ฟเวอร์ไปยังพอร์ตที่เปิดอยู่บนไคลเอนต์และลูกค้ายอมรับการเชื่อมต่อผ่าน VPN IP สิ่งที่ฉันต้องการทำให้สำเร็จคือ: อินเทอร์เน็ต -> WAN IP: พอร์ต -> ส่งต่อไปยังไคลเอ็นต์ VPN IP: พอร์ต ตัวอย่างเช่นถ้าฉันเปิดพอร์ต 6,000 บนไคลเอ็นต์ของฉันบุคคลหนึ่งสามารถโทรไปที่ xxxx: …

4
vim - เปิดไฟล์และหมายเลขบรรทัด goto โดยใช้ <filename>: <line nbr>:
เครื่องมือต่างๆเช่นgrep, py.testฯลฯ ... ใช้รูปแบบ&lt;FileName&gt;:&lt;line number&gt;:ไปยังจุดเกิดข้อผิดพลาด ตัวอย่างเช่น: ; grep -Hn Common setup.cfg setup.cfg:11: Common ฉันจะแก้ไข vim และ gvim ได้อย่างไรเพื่อที่ฉันจะสามารถเรียกใช้เช่นนั้นได้: gvim setup.cfg:11: แทน gvim setup.cfg +11 ฉันรู้ว่าฉันสามารถเขียนเชลล์สคริปต์ขนาดเล็กที่จะแยกวิเคราะห์สิ่งต่าง ๆ แต่ฉันสงสัยว่ามีวิธีที่ง่ายขึ้น
21 vim  gvim 

3
วิธีการเปลี่ยนค่าเริ่มต้นของตัวจัดการไฟล์ของเดสก์ทอป Cinnamon
ฉันใช้เครื่อง Arch Linux ด้วยเดสก์ท็อป cinnamon-git จาก Arch User Repository ตัวจัดการไฟล์เริ่มต้นคือ Nautilus มีวิธีใดบ้างที่จะเปลี่ยนค่าตัวจัดการไฟล์เริ่มต้นเป็น thunar?

3
รับตัวบ่งชี้ความคืบหน้าเมื่อนำเข้าฐานข้อมูล MySQL
ฉันมักจะนำเข้าฐานข้อมูล MySQL และอาจใช้เวลาสักครู่ ไม่มีตัวบ่งชี้ความคืบหน้าใด ๆ สามารถแสดงได้อย่างใดอย่างหนึ่ง? อาจมีการนำเข้าระเบียน, นำเข้า MB หรือนำเข้าตาราง ... สิ่งใดจะดีไปกว่าการรอ ใครมีความคิด? ฉันใช้คำสั่งนี้: mysql -uuser -p -hhost database &lt; largefile.sql ไฟล์อยู่ระหว่าง 40-300 MB และโฮสต์อยู่ในเครือข่ายท้องถิ่น
21 bash  mysql 

5
typescript -terminal การบันทึกลงในวิดีโอ?
เราจำเป็นต้องสร้างวิดีโอเกี่ยวกับการทำงานกับเอกสาร LaTex เรามี typescript และ timing -files และตอนนี้เราต้องแปลงมันเป็นวิดีโอเพื่อแสดงในคำตอบ โดยทั่วไปวิธีการทำเช่นนั้นคือการทำให้ Gif -animations ขนาดเล็ก โดยทั่วไปถ้าฉันสามารถบันทึกบางพื้นที่ในหน้าต่าง X ไปที่ GIF ได้มันจะเป็นไปได้ที่ X จะสร้างวิดีโอดังกล่าว แต่มันเป็นวิธี hxckish และช้า ดังนั้นฉันจะแปลงสคริปต์ - การประมวลผลเป็น Gif -animations ได้อย่างไร $ script -t 2&gt; timing # pastie.org etc to show your working ...WORKING... $ scriptreplay timing #how to make them into videos …

4
วิธีทำให้ apt-get ยอมรับไฟล์ config ใหม่ในการติดตั้งเดเบียนจาก Repo แบบอัตโนมัติ
ฉันกำลังเขียนสคริปต์สำหรับการติดตั้งแพคเกจแบบไม่ต้องใส่ข้อมูลที่อยู่ใน repo ของเรามันเป็นแพคเกจซอฟต์แวร์ที่มีหนึ่งในไฟล์กำหนดค่าที่ทำเครื่องหมายไว้ของ Debian มีตัวเลือกใดบ้างที่ฉันสามารถส่งไปยังapt-get/ aptitudeเพื่อให้ยอมรับไฟล์กำหนดค่าใหม่ได้? โดยทั่วไปฉันต้องการapt/ aptitudeเทียบเท่า dpkg --force-confnew ฉันต้องตอบคำถามต่อไปนี้เมื่อถูกapt-getติดตั้งด้วย Y ไฟล์การกำหนดค่า `` / opt / application / conf / XXX.conf` ' ==&gt; File on system created by you or by a script. ==&gt; File also in package provided by package maintainer. What would you like to do about …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.