Re: bash script on FreeBSD
On Wed, Oct 8, 2008 at 8:11 AM, Kalpin Erlangga Silaen [EMAIL PROTECTED] wrote: I am going to extract field username and UID from /etc/passwd and passed into some scripts. Let say I got line admin 100 admin2 200 admin3 300 admin4 400 and then I want to echoing into screen: admin has uid 100 admin2 has uid 200 admin3 has uid 300 admin4 has uid 400 How do I make this with bash script? # echo $line |awk '{ print $1 has uid $2 }' -- regards, Artis Caune . CCNA | BSDA | ' didii FreeBSD ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: bash script on FreeBSD
On Wed, Oct 08, 2008 at 12:11:40PM +0700, Kalpin Erlangga Silaen wrote: Dear all, I am going to extract field username and UID from /etc/passwd and passed into some scripts. Let say I got line admin 100 admin2 200 admin3 300 admin4 400 and then I want to echoing into screen: admin has uid 100 admin2 has uid 200 admin3 has uid 300 admin4 has uid 400 How do I make this with bash script? Thank you Kalpin Erlangga Silaen $ sed -e 's/\(admin[0-9]*\)\ \([0-9]*\)/\1 has uid \2/g' /etc/passwd Regards, -- Frank Contact info: http://www.shute.org.uk/misc/contact.html ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: bash script on FreeBSD
On Wed, Oct 08, 2008 at 08:11:56AM +0100, Frank Shute wrote: On Wed, Oct 08, 2008 at 12:11:40PM +0700, Kalpin Erlangga Silaen wrote: Dear all, I am going to extract field username and UID from /etc/passwd and passed into some scripts. Let say I got line admin 100 admin2 200 admin3 300 admin4 400 and then I want to echoing into screen: admin has uid 100 admin2 has uid 200 admin3 has uid 300 admin4 has uid 400 How do I make this with bash script? Thank you Kalpin Erlangga Silaen $ sed -e 's/\(admin[0-9]*\)\ \([0-9]*\)/\1 has uid \2/g' /etc/passwd Correction: You can't use that on /etc/passwd directly. But assuming you've got a file already in the format you specified, then you can use it on that. If you want to grab the data directly from /etc/passwd then you'd be better off using awk(1). Regards, -- Frank Contact info: http://www.shute.org.uk/misc/contact.html ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: bash script on FreeBSD
Dear Frank, you are correct. Finally, I write my script using awk. Thank you Kalpin Erlangga Silaen Frank Shute wrote: On Wed, Oct 08, 2008 at 08:11:56AM +0100, Frank Shute wrote: On Wed, Oct 08, 2008 at 12:11:40PM +0700, Kalpin Erlangga Silaen wrote: Dear all, I am going to extract field username and UID from /etc/passwd and passed into some scripts. Let say I got line admin 100 admin2 200 admin3 300 admin4 400 and then I want to echoing into screen: admin has uid 100 admin2 has uid 200 admin3 has uid 300 admin4 has uid 400 How do I make this with bash script? Thank you Kalpin Erlangga Silaen $ sed -e 's/\(admin[0-9]*\)\ \([0-9]*\)/\1 has uid \2/g' /etc/passwd Correction: You can't use that on /etc/passwd directly. But assuming you've got a file already in the format you specified, then you can use it on that. If you want to grab the data directly from /etc/passwd then you'd be better off using awk(1). Regards, ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: bash script on FreeBSD
On Wed, 08 Oct 2008 12:11:40 +0700, Kalpin Erlangga Silaen [EMAIL PROTECTED] wrote: Dear all, I am going to extract field username and UID from /etc/passwd and passed into some scripts. Let say I got line admin 100 admin2 200 admin3 300 admin4 400 and then I want to echoing into screen: admin has uid 100 admin2 has uid 200 admin3 has uid 300 admin4 has uid 400 How do I make this with bash script? You don't really need bash for this. Here's a sample awk script that should work: % cat -n /tmp/userlist.awk 1 #!/usr/bin/awk -f 2 3 { 4 print $1,has uid,$2; 5 } % chmod 0755 /tmp/userlist.awk % cat /tmp/user-data admin 100 admin2 200 admin3 300 admin4 400 % /tmp/userlist.awk /tmp/user-data admin has uid 100 admin2 has uid 200 admin3 has uid 300 admin4 has uid 400 % ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: bash script on FreeBSD
--On Wednesday, October 08, 2008 14:16:02 -0500 Giorgos Keramidas [EMAIL PROTECTED] wrote: On Wed, 08 Oct 2008 12:11:40 +0700, Kalpin Erlangga Silaen [EMAIL PROTECTED] wrote: Dear all, I am going to extract field username and UID from /etc/passwd and passed into some scripts. Let say I got line admin 100 admin2 200 admin3 300 admin4 400 and then I want to echoing into screen: admin has uid 100 admin2 has uid 200 admin3 has uid 300 admin4 has uid 400 How do I make this with bash script? You don't really need bash for this. Here's a sample awk script that should work: % cat -n /tmp/userlist.awk 1 #!/usr/bin/awk -f 2 3 { 4 print $1,has uid,$2; 5 } % chmod 0755 /tmp/userlist.awk % cat /tmp/user-data admin 100 admin2 200 admin3 300 admin4 400 % /tmp/userlist.awk /tmp/user-data admin has uid 100 admin2 has uid 200 admin3 has uid 300 admin4 has uid 400 % Sure, but why use an elephant to swat a flea when awk 'FS=:; {print $1 has uid $3}' /etc/passwd | sort -k 4 -n works fine and returns the accounts in numerical order? -- Paul Schmehl, Senior Infosec Analyst As if it wasn't already obvious, my opinions are my own and not those of my employer. *** Check the headers before clicking on Reply. ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to [EMAIL PROTECTED]
bash script on FreeBSD
Dear all, I am going to extract field username and UID from /etc/passwd and passed into some scripts. Let say I got line admin 100 admin2 200 admin3 300 admin4 400 and then I want to echoing into screen: admin has uid 100 admin2 has uid 200 admin3 has uid 300 admin4 has uid 400 How do I make this with bash script? Thank you Kalpin Erlangga Silaen ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to [EMAIL PROTECTED]