cut命令用法大全

时间:2024.4.30

linux中截取字符串cut命令用法简介:

语法:cut -cnum1-num2 fileName

使用权限:所有使用者

说明:显示每行从开头算起 num1 到 num2 的文字。

例子:

shell>> cat fileName

test2

this is a test content

shell>> cut -c1-6 fileName ## print 开头算起前 6 个字元

test2

this i

-c m-n 表示显示每一行的第m个字元到第n个字元。例如:

liubi 23 140004

# cut -c 1-5,10-14 file

liubi

-f m-n 表示显示第m栏到第n栏(使用tab分隔)。例如:

liubi 23 14000

# cut -f 1,3 file

liubi 14000

-c 和 -f 参数可以跟以下子参数:

m 第m个字符或字段

m- 从第m个字符或字段到文件结束

-n 从第1个到第n个字符或字段

m-n 从第m个到第n个字符或字段

我们经常会遇到需要取出分字段的文件的某些特定字段,例如 /etc/password就是通过":"分隔各个字段的。可以通过cut命令来实现。例如,我们希望将系统账号名保存到特定的文件,就可以:

cut -d: -f 1 /etc/passwd > /tmp/users

-d用来定义分隔符,默认为tab键,-f表示需要取得哪个字段

如:

使用|分隔

cut -d’|’ -f2 1.test>2.test

使用:分隔

cut -d’:’ -f2 1.test>2.test

这里使用单引号或双引号都行。

/var/tmp/easypbx/

|-- etc

| `-- asterisk

|-- usr

| |-- include

| | |-- asterisk

| | | |-- _private.h | | | |-- abstract_jb.h | | | |-- acl.h | | | |-- adsi.h

| | | |-- ael_structs.h | | | |-- agi.h | | | |-- alaw.h | | | |-- aoc.h | | | |-- app.h | | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | | |-- ast_expr.h |-- ast_version.h |-- astdb.h |-- astmm.h |-- astobj.h |-- astobj2.h |-- astosp.h |-- audiohook.h |-- autochan.h |-- autoconfig.h |-- bridging.h |-- bridging_features.h |-- bridging_technology.h |-- build.h |-- buildinfo.h |-- buildopts.h |-- calendar.h |-- callerid.h |-- causes.h |-- ccss.h |-- cdr.h |-- cel.h |-- celt.h |-- channel.h |-- channelstate.h |-- chanvars.h |-- cli.h |-- compat.h |-- compiler.h |-- config.h |-- crypto.h |-- data.h |-- datastore.h |-- devicestate.h |-- dial.h

| | | |-- dlinkedlists.h | | | |-- dns.h

| | | |-- dnsmgr.h

| | | |-- doxygen

| | | | |-- architecture.h

| | | | |-- asterisk-git-howto.h | | | | |-- commits.h | | | | |-- licensing.h

| | | | |-- mantisworkflow.h | | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | | |-- releases.h `-- reviewboard.h | | |-- doxyref.h |-- dsp.h |-- dundi.h |-- endian.h |-- enum.h |-- event.h |-- event_defs.h |-- extconf.h |-- features.h |-- file.h |-- format.h |-- format_cap.h |-- format_pref.h |-- frame.h |-- frame_defs.h |-- framehook.h |-- fskmodem.h |-- fskmodem_float.h |-- fskmodem_int.h |-- global_datastores.h |-- hashtab.h |-- heap.h |-- http.h |-- image.h |-- indications.h |-- inline_api.h |-- io.h |-- jabber.h |-- jingle.h |-- linkedlists.h |-- localtime.h |-- lock.h |-- logger.h

| | | |-- manager.h | | | |-- md5.h | | | |-- message.h | | | |-- mod_format.h | | | |-- module.h | | | |-- monitor.h

| | | |-- musiconhold.h | | | |-- netsock.h | | | |-- netsock2.h | | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | |

| | | |-- network.h |-- optional_api.h |-- options.h |-- paths.h |-- pbx.h |-- pktccops.h |-- plc.h |-- poll-compat.h |-- privacy.h |-- pval.h |-- res_fax.h |-- res_odbc.h |-- res_srtp.h |-- rtp_engine.h |-- say.h |-- sched.h |-- security_events.h |-- security_events_defs.h |-- select.h |-- sha1.h |-- silk.h |-- slin.h |-- slinfactory.h |-- smdi.h |-- speech.h |-- srv.h |-- stringfields.h |-- strings.h |-- stun.h |-- syslog.h |-- taskprocessor.h |-- tcptls.h |-- tdd.h |-- term.h |-- test.h

| | | |-- threadstorage.h

| | | |-- time.h

| | | |-- timing.h

| | | |-- transcap.h

| | | |-- translate.h

| | | |-- udptl.h

| | | |-- ulaw.h

| | | |-- unaligned.h

| | | |-- utils.h

| | | |-- version.h

| | | |-- xml.h

| | | `-- xmldoc.h

| | `-- asterisk.h

| |-- lib

| | `-- asterisk

| | `-- modules

| | |-- app_adsiprog.so

| | |-- app_alarmreceiver.so | | |-- app_amd.so

| | |-- app_authenticate.so | | |-- app_cdr.so

| | |-- app_celgenuserevent.so | | |-- app_chanisavail.so | | |-- app_channelredirect.so | | |-- app_chanspy.so | | |-- app_confbridge.so

| | |-- app_controlplayback.so | | |-- app_dahdiras.so | | |-- app_db.so

| | |-- app_dial.so

| | |-- app_dictate.so

| | |-- app_directed_pickup.so | | |-- app_directory.so | | |-- app_disa.so

| | |-- app_dumpchan.so | | |-- app_echo.so | | |-- app_exec.so

| | |-- app_externalivr.so | | |-- app_festival.so | | |-- app_flash.so | | |-- app_followme.so | | |-- app_forkcdr.so | | |-- app_getcpeid.so | | |-- app_ices.so

| | |-- app_image.so | | |-- app_macro.so | | |-- app_milliwatt.so | | |-- app_minivm.so | | |-- app_mixmonitor.so | | |-- app_morsecode.so | | |-- app_mp3.so

| | |-- app_nbscat.so | | |-- app_originate.so

| | |-- app_parkandannounce.so | | |-- app_playback.so | | |-- app_playtones.so | | |-- app_privacy.so | | |-- app_queue.so | | |-- app_read.so

| | |-- app_readexten.so | | |-- app_record.so

| | |-- app_sayunixtime.so | | |-- app_senddtmf.so | | |-- app_sendtext.so | | |-- app_sms.so

| | |-- app_softhangup.so | | |-- app_speech_utils.so | | |-- app_stack.so

| | |-- app_system.so | | |-- app_talkdetect.so | | |-- app_test.so

| | |-- app_transfer.so | | |-- app_url.so

| | |-- app_userevent.so | | |-- app_verbose.so | | |-- app_voicemail.so | | |-- app_waitforring.so | | |-- app_waitforsilence.so | | |-- app_waituntil.so | | |-- app_while.so

| | |-- app_zapateller.so

| | |-- bridge_builtin_features.so | | |-- bridge_multiplexed.so | | |-- bridge_simple.so | | |-- bridge_softmix.so | | |-- cdr_csv.so

| | |-- cdr_custom.so | | |-- cdr_manager.so

| | |-- cdr_sqlite3_custom.so | | |-- cdr_syslog.so | | |-- cel_custom.so | | |-- cel_manager.so

| | |-- cel_sqlite3_custom.so | | |-- chan_agent.so | | |-- chan_bridge.so | | |-- chan_dahdi.so | | |-- chan_iax2.so | | |-- chan_local.so | | |-- chan_mgcp.so

| | |-- chan_multicast_rtp.so | | |-- chan_oss.so | | |-- chan_phone.so | | |-- chan_sip.so | | |-- chan_skinny.so | | |-- chan_unistim.so | | |-- codec_a_mu.so | | |-- codec_adpcm.so | | |-- codec_alaw.so | | |-- codec_dahdi.so | | |-- codec_g722.so | | |-- codec_g726.so | | |-- codec_gsm.so | | |-- codec_lpc10.so | | |-- codec_resample.so | | |-- codec_ulaw.so | | |-- format_g719.so | | |-- format_g723.so | | |-- format_g726.so | | |-- format_g729.so | | |-- format_gsm.so | | |-- format_h263.so | | |-- format_h264.so | | |-- format_ilbc.so | | |-- format_jpeg.so

| | |-- format_ogg_vorbis.so | | |-- format_pcm.so | | |-- format_siren14.so | | |-- format_siren7.so | | |-- format_sln.so | | |-- format_vox.so | | |-- format_wav.so

| | |-- format_wav_gsm.so

| | |-- func_aes.so

| | |-- func_audiohookinherit.so | | |-- func_base64.so | | |-- func_blacklist.so

| | |-- func_callcompletion.so | | |-- func_callerid.so | | |-- func_cdr.so

| | |-- func_channel.so | | |-- func_config.so | | |-- func_curl.so

| | |-- func_cut.so

| | |-- func_db.so

| | |-- func_devstate.so | | |-- func_dialgroup.so | | |-- func_dialplan.so | | |-- func_enum.so | | |-- func_env.so

| | |-- func_extstate.so | | |-- func_frame_trace.so | | |-- func_global.so

| | |-- func_groupcount.so | | |-- func_iconv.so

| | |-- func_jitterbuffer.so | | |-- func_lock.so

| | |-- func_logic.so

| | |-- func_math.so | | |-- func_md5.so

| | |-- func_module.so | | |-- func_pitchshift.so | | |-- func_rand.so

| | |-- func_realtime.so | | |-- func_sha1.so

| | |-- func_shell.so

| | |-- func_sprintf.so | | |-- func_srv.so

| | |-- func_strings.so | | |-- func_sysinfo.so | | |-- func_timeout.so | | |-- func_uri.so

| | |-- func_version.so | | |-- func_vmcount.so | | |-- func_volume.so | | |-- pbx_ael.so

| | |-- pbx_config.so

| | |-- pbx_dundi.so | | |-- pbx_loopback.so | | |-- pbx_realtime.so | | |-- pbx_spool.so | | |-- res_adsi.so

| | |-- res_ael_share.so | | |-- res_agi.so

| | |-- res_calendar.so | | |-- res_clialiases.so | | |-- res_clioriginate.so | | |-- res_config_curl.so | | |-- res_config_ldap.so | | |-- res_convert.so | | |-- res_crypto.so | | |-- res_curl.so

| | |-- res_fax.so

| | |-- res_format_attr_celt.so | | |-- res_format_attr_silk.so | | |-- res_limit.so | | |-- res_monitor.so

| | |-- res_musiconhold.so | | |-- res_mutestream.so | | |-- res_phoneprov.so | | |-- res_realtime.so | | |-- res_rtp_asterisk.so | | |-- res_rtp_multicast.so | | |-- res_security_log.so | | |-- res_smdi.so | | |-- res_speech.so

| | |-- res_stun_monitor.so | | |-- res_timing_dahdi.so | | `-- res_timing_pthread.so | |-- sbin

| | |-- astcanary

| | |-- astdb2bdb

| | |-- astdb2sqlite3

| | |-- asterisk

| | |-- astgenkey

| | |-- autosupport

| | |-- rasterisk -> asterisk

| | `-- safe_asterisk

| `-- share

| `-- man

| `-- man8

| |-- asterisk.8

| |-- astgenkey.8

| |-- autosupport.8

| `-- safe_asterisk.8

`-- var

|-- lib

| `-- asterisk

| |-- agi-bin

| |-- documentation

| | |-- appdocsxml.dtd

| | |-- core-en_US.xml

| | `-- thirdparty

| |-- firmware

| | `-- iax

| |-- images

| | |-- asterisk-intro.jpg

| | `-- kpad2.jpg

| |-- keys

| |-- moh

| | |-- CHANGES-asterisk-moh-opsound-wav | | |-- CREDITS-asterisk-moh-opsound-wav | | |-- LICENSE-asterisk-moh-opsound-wav | | |-- macroform-cold_day.wav

| | |-- macroform-robot_dity.wav | | |-- macroform-the_simplicity.wav

| | |-- manolo_camp-morning_coffee.wav | | `-- reno_project-system.wav

| |-- phoneprov

| |-- sounds

| | `-- en

| | |-- CHANGES-asterisk-core-en-1.4.21 | | |-- CREDITS-asterisk-core-en-1.4.21 | | |-- LICENSE-asterisk-core-en-1.4.21 | | |-- agent-alreadyon.gsm

| | |-- agent-incorrect.gsm

| | |-- agent-loggedoff.gsm

| | |-- agent-loginok.gsm

| | |-- agent-newlocation.gsm | | |-- agent-pass.gsm

| | |-- agent-user.gsm

| | |-- ascending-2tone.gsm | | |-- auth-incorrect.gsm

| | |-- auth-thankyou.gsm

| | |-- beep.gsm

| | |-- beeperr.gsm

| | |-- conf-adminmenu-162.gsm | | |-- conf-adminmenu.gsm | | |-- conf-enteringno.gsm | | |-- conf-errormenu.gsm | | |-- conf-extended.gsm | | |-- conf-getchannel.gsm | | |-- conf-getconfno.gsm | | |-- conf-getpin.gsm | |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| | |-- conf-hasjoin.gsm |-- conf-hasleft.gsm |-- conf-invalid.gsm |-- conf-invalidpin.gsm |-- conf-kicked.gsm |-- conf-leaderhasleft.gsm |-- conf-locked.gsm |-- conf-lockednow.gsm |-- conf-muted.gsm |-- conf-noempty.gsm |-- conf-nonextended.gsm |-- conf-now-muted.gsm |-- conf-now-recording.gsm |-- conf-now-unmuted.gsm |-- conf-onlyone.gsm |-- conf-onlyperson.gsm |-- conf-otherinparty.gsm |-- conf-placeintoconf.gsm |-- conf-roll-callcomplete.gsm |-- conf-thereare.gsm |-- conf-unlockednow.gsm |-- conf-unmuted.gsm |-- conf-usermenu-162.gsm |-- conf-usermenu.gsm |-- conf-userswilljoin.gsm |-- conf-userwilljoin.gsm |-- conf-waitforleader.gsm |-- confbridge-join.gsm |-- confbridge-leave.gsm |-- core-sounds-en.txt |-- demo-abouttotry.gsm |-- demo-congrats.gsm |-- demo-echodone.gsm |-- demo-echotest.gsm |-- demo-enterkeywords.gsm

| | |-- demo-instruct.gsm | | |-- demo-moreinfo.gsm | | |-- demo-nogo.gsm | | |-- demo-nomatch.gsm | | |-- demo-thanks.gsm | | |-- descending-2tone.gsm | | |-- dictate

| | | |-- both_help.gsm

| | | |-- enter_filename.gsm | |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| | |-- forhelp.gsm |-- pause.gsm |-- paused.gsm |-- play_help.gsm |-- playback.gsm |-- playback_mode.gsm |-- record.gsm |-- record_help.gsm |-- record_mode.gsm `-- truncating_audio.gsm |-- 0.gsm |-- 1.gsm |-- 10.gsm |-- 11.gsm |-- 12.gsm |-- 13.gsm |-- 14.gsm |-- 15.gsm |-- 16.gsm |-- 17.gsm |-- 18.gsm |-- 19.gsm |-- 2.gsm |-- 20.gsm |-- 3.gsm |-- 30.gsm |-- 4.gsm |-- 40.gsm |-- 5.gsm |-- 50.gsm |-- 6.gsm |-- 60.gsm |-- 7.gsm |-- 70.gsm | | | | | | | | | | |-- digits | | | | | | | | | | | | | | | | | | | | | | | |

| | | |-- 8.gsm | | | |-- 80.gsm | | | |-- 9.gsm | | | |-- 90.gsm | | | |-- a-m.gsm | | | |-- at.gsm | | | |-- billion.gsm | | | |-- day-0.gsm | | | |-- day-1.gsm | |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| | |-- day-2.gsm |-- day-3.gsm |-- day-4.gsm |-- day-5.gsm |-- day-6.gsm |-- dollars.gsm |-- h-1.gsm |-- h-10.gsm |-- h-11.gsm |-- h-12.gsm |-- h-13.gsm |-- h-14.gsm |-- h-15.gsm |-- h-16.gsm |-- h-17.gsm |-- h-18.gsm |-- h-19.gsm |-- h-2.gsm |-- h-20.gsm |-- h-3.gsm |-- h-30.gsm |-- h-4.gsm |-- h-40.gsm |-- h-5.gsm |-- h-50.gsm |-- h-6.gsm |-- h-60.gsm |-- h-7.gsm |-- h-70.gsm |-- h-8.gsm |-- h-80.gsm |-- h-9.gsm |-- h-90.gsm |-- h-billion.gsm |-- h-hundred.gsm | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

| | | |-- h-million.gsm | | | |-- h-thousand.gsm | | | |-- hundred.gsm | | | |-- million.gsm | | | |-- minus.gsm | | | |-- mon-0.gsm | | | |-- mon-1.gsm | | | |-- mon-10.gsm | | | |-- mon-11.gsm | |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| | |-- mon-2.gsm |-- mon-3.gsm |-- mon-4.gsm |-- mon-5.gsm |-- mon-6.gsm |-- mon-7.gsm |-- mon-8.gsm |-- mon-9.gsm |-- oclock.gsm |-- oh.gsm |-- p-m.gsm |-- pound.gsm |-- star.gsm |-- thousand.gsm |-- today.gsm |-- tomorrow.gsm `-- yesterday.gsm |-- call-from.gsm |-- no-recording.gsm | | | | | | | | | | | | | | | | | |-- dir-first.gsm |-- dir-firstlast.gsm |-- dir-instr.gsm |-- dir-intro-fn.gsm |-- dir-intro.gsm |-- dir-last.gsm |-- dir-multi1.gsm |-- dir-multi2.gsm |-- dir-multi3.gsm |-- dir-multi9.gsm |-- dir-nomatch.gsm |-- dir-nomore.gsm |-- dir-pls-enter.gsm |-- dir-usingkeypad.gsm |-- dir-welcome.gsm |-- followme | |

| | | |-- options.gsm

| | | |-- pls-hold-while-try.gsm | | | |-- sorry.gsm

| | | `-- status.gsm | | |-- hello-world.gsm | | |-- hours.gsm

| | |-- invalid.gsm

| | |-- letters

| | | |-- a.gsm

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| | |-- ascii123.gsm |-- ascii124.gsm |-- ascii125.gsm |-- ascii126.gsm |-- ascii34.gsm |-- ascii36.gsm |-- ascii37.gsm |-- ascii38.gsm |-- ascii39.gsm |-- ascii40.gsm |-- ascii41.gsm |-- ascii42.gsm |-- ascii44.gsm |-- ascii58.gsm |-- ascii59.gsm |-- ascii60.gsm |-- ascii62.gsm |-- ascii63.gsm |-- ascii91.gsm |-- ascii92.gsm |-- ascii93.gsm |-- ascii94.gsm |-- ascii95.gsm |-- ascii96.gsm |-- asterisk.gsm |-- at.gsm |-- b.gsm |-- c.gsm |-- d.gsm |-- dash.gsm |-- dollar.gsm |-- dot.gsm |-- e.gsm |-- equals.gsm |-- exclaimation-point.gsm | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

| | | |-- f.gsm | | | |-- g.gsm | | | |-- h.gsm | | | |-- i.gsm | | | |-- j.gsm | | | |-- k.gsm | | | |-- l.gsm | | | |-- m.gsm | | | |-- n.gsm | |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| | |-- o.gsm |-- p.gsm |-- plus.gsm |-- q.gsm |-- r.gsm |-- s.gsm |-- slash.gsm |-- space.gsm |-- t.gsm |-- u.gsm |-- v.gsm |-- w.gsm |-- x.gsm |-- y.gsm |-- z.gsm `-- zed.gsm |-- 9_p.gsm |-- a_p.gsm |-- b_p.gsm |-- c_p.gsm |-- d_p.gsm |-- e_p.gsm |-- f_p.gsm |-- g_p.gsm |-- h_p.gsm |-- i_p.gsm |-- j_p.gsm |-- k_p.gsm |-- l_p.gsm | | | | | | | | | | | | | | | | |-- minutes.gsm |-- pbx-invalid.gsm |-- pbx-invalidpark.gsm |-- pbx-parkingfailed.gsm |-- pbx-transfer.gsm |-- phonetic | | | | | | | | | | | | |

| | | |-- m_p.gsm | | | |-- n_p.gsm | | | |-- o_p.gsm | | | |-- p_p.gsm | | | |-- q_p.gsm | | | |-- r_p.gsm | | | |-- s_p.gsm | | | |-- t_p.gsm | | | |-- u_p.gsm | |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| | |-- v_p.gsm |-- w_p.gsm |-- x_p.gsm |-- y_p.gsm `-- z_p.gsm |-- 1.gsm |-- 10.gsm |-- 2.gsm |-- 3.gsm |-- 4.gsm |-- 5.gsm | | | | | |-- priv-callee-options.gsm |-- priv-callpending.gsm |-- priv-introsaved.gsm |-- priv-recordintro.gsm |-- privacy-incorrect.gsm |-- privacy-prompt.gsm |-- privacy-thankyou.gsm |-- privacy-unident.gsm |-- queue-callswaiting.gsm |-- queue-holdtime.gsm |-- queue-less-than.gsm |-- queue-minute.gsm |-- queue-minutes.gsm |-- queue-periodic-announce.gsm |-- queue-quantity1.gsm |-- queue-quantity2.gsm |-- queue-reporthold.gsm |-- queue-seconds.gsm |-- queue-thankyou.gsm |-- queue-thereare.gsm |-- queue-youarenext.gsm |-- screen-callee-options.gsm |-- seconds.gsm |-- silence | | | | | |

| | | |-- 6.gsm | | | |-- 7.gsm | | | |-- 8.gsm | | | `-- 9.gsm | | |-- spy-agent.gsm | | |-- spy-console.gsm | | |-- spy-dahdi.gsm | | |-- spy-h323.gsm | | |-- spy-iax.gsm | |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| | |-- spy-iax2.gsm |-- spy-jingle.gsm |-- spy-local.gsm |-- spy-mgcp.gsm |-- spy-misdn.gsm |-- spy-mobile.gsm |-- spy-nbs.gsm |-- spy-sip.gsm |-- spy-skinny.gsm |-- spy-unistim.gsm |-- spy-usbradio.gsm |-- spy-zap.gsm |-- ss-noservice.gsm |-- transfer.gsm |-- tt-allbusy.gsm |-- tt-monkeys.gsm |-- tt-monkeysintro.gsm |-- tt-somethingwrong.gsm |-- tt-weasels.gsm |-- vm-Cust1.gsm |-- vm-Cust2.gsm |-- vm-Cust3.gsm |-- vm-Cust4.gsm |-- vm-Cust5.gsm |-- vm-Family.gsm |-- vm-Friends.gsm |-- vm-INBOX.gsm |-- vm-Old.gsm |-- vm-Urgent.gsm |-- vm-Work.gsm |-- vm-advopts.gsm |-- vm-and.gsm |-- vm-calldiffnum.gsm |-- vm-changeto.gsm |-- vm-delete.gsm

| | |-- vm-deleted.gsm | | |-- vm-dialout.gsm | | |-- vm-duration.gsm

| | |-- vm-enter-num-to-call.gsm | | |-- vm-extension.gsm | | |-- vm-first.gsm

| | |-- vm-for.gsm

| | |-- vm-forward-multiple.gsm | | |-- vm-forward.gsm | |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| | |-- vm-forwardoptions.gsm |-- vm-from-extension.gsm |-- vm-from-phonenumber.gsm |-- vm-from.gsm |-- vm-goodbye.gsm |-- vm-helpexit.gsm |-- vm-incorrect-mailbox.gsm |-- vm-incorrect.gsm |-- vm-instructions.gsm |-- vm-intro.gsm |-- vm-invalid-password.gsm |-- vm-invalidpassword.gsm |-- vm-isonphone.gsm |-- vm-isunavail.gsm |-- vm-last.gsm |-- vm-leavemsg.gsm |-- vm-login.gsm |-- vm-mailboxfull.gsm |-- vm-marked-nonurgent.gsm |-- vm-marked-urgent.gsm |-- vm-message.gsm |-- vm-messages.gsm |-- vm-minutes.gsm |-- vm-mismatch.gsm |-- vm-msginstruct.gsm |-- vm-msgsaved.gsm |-- vm-newpassword.gsm |-- vm-newuser.gsm |-- vm-next.gsm |-- vm-no.gsm |-- vm-nobodyavail.gsm |-- vm-nobox.gsm |-- vm-nomore.gsm |-- vm-nonumber.gsm |-- vm-num-i-have.gsm

| | |-- vm-onefor-full.gsm | | |-- vm-onefor.gsm | | |-- vm-options.gsm | | |-- vm-opts-full.gsm | | |-- vm-opts.gsm

| | |-- vm-passchanged.gsm | | |-- vm-password.gsm | | |-- vm-pls-try-again.gsm | | |-- vm-press.gsm | |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| |

| | |-- vm-prev.gsm |-- vm-reachoper.gsm |-- vm-rec-busy.gsm |-- vm-rec-name.gsm |-- vm-rec-temp.gsm |-- vm-rec-unv.gsm |-- vm-received.gsm |-- vm-record-prepend.gsm |-- vm-reenterpassword.gsm |-- vm-repeat.gsm |-- vm-review-nonurgent.gsm |-- vm-review-urgent.gsm |-- vm-review.gsm |-- vm-saved.gsm |-- vm-savedto.gsm |-- vm-savefolder.gsm |-- vm-savemessage.gsm |-- vm-saveoper.gsm |-- vm-sorry.gsm |-- vm-star-cancel.gsm |-- vm-starmain.gsm |-- vm-tempgreetactive.gsm |-- vm-tempgreeting.gsm |-- vm-tempgreeting2.gsm |-- vm-tempremoved.gsm |-- vm-then-pound.gsm |-- vm-theperson.gsm |-- vm-tmpexists.gsm |-- vm-tocallback.gsm |-- vm-tocallnum.gsm |-- vm-tocancel.gsm |-- vm-tocancelmsg.gsm |-- vm-toenternumber.gsm |-- vm-toforward.gsm |-- vm-tohearenv.gsm

| | |-- vm-tomakecall.gsm | | |-- vm-tooshort.gsm | | |-- vm-toreply.gsm | | |-- vm-torerecord.gsm | | |-- vm-undelete.gsm | | |-- vm-undeleted.gsm

| | |-- vm-unknown-caller.gsm | | |-- vm-whichbox.gsm | | `-- vm-youhave.gsm | `-- static-http

| |-- ajamdemo.html

| |-- astman.css

| |-- astman.js

| |-- core-en_US.xml

| |-- mantest.html

| `-- prototype.js

|-- log

| `-- asterisk

| |-- cdr-csv

| |-- cdr-custom

| `-- cel-custom

|-- run

| `-- asterisk

`-- spool

`-- asterisk

|-- dictate

|-- meetme

|-- monitor

|-- system

|-- tmp

`-- voicemail

49 directories, 823 files

Linux下cut命令用法详解

2008-12-05 15:58:57 阅读38 评论0 字号:大中小 订阅

有时我们经常会遇到这样一些问题:有一页电话号码薄,上面按顺序规则地写着人名、家庭住址、电话、备注等,此时我们只想取出所有人的名字和其对应的电话号码,你有几种方法可以实现呢?

以下内容欢迎转载,但请保留作者名号及出处,谢谢!

确实这种纵向定位的方式用常规办法难以实现,这时,cut就可以大显身手了。

cut -b list [-n] [file ...]

cut -c list [file ...]

cut -f list [-d delim][-s][file ...]

上面的-b、-c、-f分别表示字节、字符、字段(即byte、character、field);

list

delim(英文全写:delimiter)表示分隔符,默认情况下为TAB;

-s表示不包括那些不含分隔符的行(这样有利于去掉注释和标题)

上面三种方式中,表示从指定的范围中提取字节(-b)、或字符(-c)、或字段(-f)。

范围的表示方法:

interrupts文件中的字符排列非常齐整,正适合我们切豆腐。

但这里我们只对两个数字列感兴趣,用法如下:

里面还有一些不需要的内容,精减一下:

cut命令用法大全

关于正则表达式的使用,请自行查阅相关资料。

合到一起:

cut命令用法大全

不相邻列的截选又应该如何做呢?

cut命令用法大全

这种方式需要事先确定占多少个字符位置,不仅麻烦,而且容易出错。

下面的问题该怎么去做?

cut命令用法大全

cut –c主要是用来在固定字符位置或个数的文本文件中提取,对于上面的例子就显得无能为力了。仔细观察,发现passwd文件有个规律,就是以冒号来区分不同的段的文本,于是。。。

cut命令用法大全

继续,创建一个文本文件,名为a.txt,名字有点土,凑合着用吧。

A1、B1、C1所代表的行字符之间均以TAB分隔,D1却是以空格来分开的。

看到-s的作用了吗?(因为第一行不含有任何TAB字符,所以直接被剔除了),而最后一行(即D1行),是以空格区分间距,所以也不合要求。

多了个参数,这个我没讲,只要你的智商比范伟高一点点,就肯定能猜出来啦。^_^

好了,下面是最后一个用法的讲解了:

因为虚拟终端下无法显示汉字,所以我只好回到图形下,截图就成这个白不垃圾的样子啦,忍忍吧,就快讲完了。

在这个文件中,每个汉字都是用半角空格分隔的。

原因在于汉字本身是双字节的,cut –c把汉字“我”当成一个字符来处理,而cut –b是以字节来处理,把“我”拆成了两个字节,结果是字符被“切成两半”,因此无法正常显示。

原因找到了,要怎么办才好呢?

更多相关推荐:
cut选取命令

cut是一个选取命令就是将一段数据经过分析取出我们想要的一般来说选取信息通常是针对行来进行分析的并不是整篇信息分析的1其语法格式为cutbnfile或cutcfile或cutdffile使用说明cut命令从文件...

linux基础命令总结

1shutdownhnow立刻进行关机2shutdownrnow重新启动3reboot重启4logout用户注销5新建用户useraddzhangbinbin6修改密码passwdzhangbinbin7删除用...

awk 和cut命令

linux命令之sedawkgrepcut篇用下来感觉这4个命令比较常用功能也比较强大等我有时间了要好好整理一下首先介绍一下cut之前有文章已经讲过它的用法了这次连带cut的死对头paste一起拎出来讲讲第一篇...

shell中的cut命令

shell中的cut命令cut是以每一行为一个处理对象的这种机制和sed是一样的关于sed的入门文章将在近期发布2cut一般以什么为依据呢也就是说我怎么告诉cut我想定位到的剪切内容呢cut命令主要是接受三个定...

stata命令总结

表21回归分析相关命令一览命令用途anova方差和协方差分析heckmanHeckman筛选模型intreg离散型变量模型包括Tobitcnreg和intregivreg工具变量法IV或2SLSneweyNew...

clc和clear命令的使用总结

clc和clear命令的使用总结在MATLAB中,clc和clear命令是大家经常用到的命令,熟练使用这两个命令可为编程提供很大的方便。clc命令是用来清除命令窗口的内容,这点不用多说。不管开启多少个应用程序,…

Cisco常用命令第一~四学期总结

Cisco常用命令第一四学期总结小知识点一IP地址分类类型十进制范围每个网络可容纳主机数A01272242B1281912162C192223282二私有IP地址其余皆为公网地址类型地址范围A100001025...

Linux下cut命令用法详解

Linux下cut命令用法详解Linux及相关20xx1205155857阅读37评论0字号大中小订阅有时我们经常会遇到这样一些问题有一页电话号码薄上面按顺序规则地写着人名家庭住址电话备注等此时我们只想取出所有...

autocad20xx启动慢 正在重生成模型然后卡住不动

autocad20xx启动慢正在重生成模型然后卡住不动20xx0618112751分类举报字号订阅技术部都在用cad经常出现autocad20xx启动慢正在重生成模型然后卡住不动这样的问题一开始搞不清什么情况发...

ICU进修小结

ICU进修总结根据医院安排我有幸到自贡市第一人民医院重症监护病房ICU进行了为期三个月的工作进修转眼之间三个月的进修工作已经顺利结束通过这三个月的学习我对ICU的基本工作流程护理工作特点主要设备及使用等各方面都...

ICU进修汇报

进修汇报20xx年x月至20xx年x月,在院领导和科主任的安排下,我到北京大学人民医院ICU进修半年。能获得这样一个机会,暂时抛开忙碌的临床工作,到这所国内顶尖医院学习,对我而言,无疑是一件幸事。6个月的时间转…

广东省人民医院ICU进修总结汇报

广东省人民医院ICU进修总结汇报(第一部分:院级总体层次)我于20xx年x月x日—20xx年x月x日在省医ICU一区进行了为期三个月的进修学习。期间于11月x日—26日参加了省医举办的面对全国护理管理者和护理骨…

cut命令总结(9篇)