Board logo

标题: PK PowerShell:在文本每行下面增加一个空行 [打印本页]

作者: gawk    时间: 2013-7-28 16:04     标题: PK PowerShell:在文本每行下面增加一个空行

听说PowerShell到处找人PK,来试试吧。

C:\>type a.txt
Talk is cheap.
Show me the code.
Talk is cheap.
Show me the code.

C:\>gawk "1;{print \"\"}" a.txt
Talk is cheap.

Show me the code.

Talk is cheap.

Show me the code.
作者: weichenxiehou    时间: 2013-7-28 17:07

sed应该也来捧个场啊,还有更简短的吗:
  1. sed "a\\r" a.txt
复制代码

作者: CrLf    时间: 2013-7-28 17:07

本帖最后由 CrLf 于 2013-7-28 17:37 编辑

也来个 sed:
  1. sed "G" a.txt
复制代码
以及 gawk 的常规方案,楼主的思路更精巧...
  1. gawk "{print $0ORS}" a.txt
复制代码

作者: weichenxiehou    时间: 2013-7-28 17:15

回复 3# CrLf
从空的暂存缓冲区复制追加,实在是高啊!
作者: PowerShell    时间: 2013-7-28 21:29

本帖最后由 PowerShell 于 2013-7-28 21:41 编辑

1 呵呵,组团pk我来啦,真实荣幸啊~~~不过我近期时间紧吧,有可能不能投入太多精力,贴回的晚了莫怪。
2 脚本之多何其壮观,争奇斗艳实乃吾辈当为,pk提高何其荣耶,pk过程可知寸有所长,胜者可吹何其乐焉。pk不过也有收获。---咱心态好。
3 最觉吃便的是明明是脚本人,却学那恶霸,黑势力,用权压人,威胁,辱骂,人家一说出你缺点就胡乱安个理由,乱删帖。孙子么?

--------------------------------------------------------------------------
type a.txt |foreach { $_ + "`r"  >> b.txt }
type a.txt |foreach { $_ + "`r"  >> a.txt }  ---也行
cat  a.txt |foreach { $_ + "`r"  >> a.txt }  ---也行
cat  a.txt | %  { $_ + "`r"  >> a.txt }  ---也行
----------------------------------------------------------------------------
powershell 是面向对象的,和python类似,如果这样的数据处理,脱离了win的对象,和库。
powershell就像被砍掉了手脚,纯pk语法了。听见没?powershell自缚手脚跟你pk呢。
再说这么简单的问题,能pk出啥来呢?
------------------------------------------------
而且我曾经说过:
我powershell宗,又分语法研究分舵,和库钻研分舵,这个我已经说过很多次了。

python致力于提供最简单,容易理解的代码,我也是这样想的。所以,我算是powershell宗,语法分舵,【语法简单明了旗】的一员。
我旗之代码,讲求语法用标准命令,尽量不用简写,一般有很多中文变量,中文注释,代码极易菜鸟理解,极易他人修改,即使n年后,也很容易查找修改,每行代码实现一个小功能。
powershell是新出的语言,功能完备,写起脚本来,本身就比老的脚本语言要直观些的。  
而且我认为一个10行的脚本,和同功能的200行的脚本,电脑执行起来,速度不会有太大差别。总之,我们【语法简单明了旗】致力于迁就人,迁就菜鸟。


但是我宗,语法分舵,【宁可语法奇葩,也要语句长度最短旗】就是相反的了。
这些长老搞的语句极短,大都在一行之内,能简写的命令绝不全写,管你看得懂看不懂呢?  
代表的有perl语言。

呵呵,大多数脚本语言的,语法分舵,大都有这样的分化。


也就是说,我不愿意写上述代码(尽量简短,带有缩写的代码)的,但不是说我不会写。
所以请别告诉我你写的代码短点,尤其是这里,大家都还在玩bat,还不太会powershell,我宁可把代码写长点,语法写的标准点,调理清晰点,让菜鸟看着比bat语法更容易懂。我的用意大家不可不知。
作者: CrLf    时间: 2013-7-28 23:16

本帖最后由 CrLf 于 2013-7-29 08:17 编辑

“自缚手脚”,说白了就是不擅长,看来你也是承认语言各有长短的嘛
前阵子粗浅接触了下 ps 的感受就是管理方面异常强大,文本处理上还是 linux 集团军比较牛逼,毕竟 linux 系统的各种配置就是基于字符串的,所以这些工具必须强大
早说了 powershell 理念不一样,擅长的是管理不是纯文本操作,性质有那么一点类似 wmic,而且它就是个 shell,能无敌的只有操作系统,不认同就算了还反咬一口。
速度上 vbs 和 js 也都比 ps 快,若说易读性 vbs 还更好——新手如果不去查会知道 $_ 是啥?"`r" 是啥?还有 >> 又是啥?vbs 里的这些东西是一堆英语缩写或是让用户来自定义,所以说简单的 shell 不需要过分考虑可读性,在语法不生僻的基础上一般是越短越好,手工操作若繁琐还要 shell 干什么
另外,我不是来 pk 的,纯粹是看到楼主的代码有了想法就回个帖而已,马勒戈壁,招你惹你了,就回个代码没提旁的你也要刺我一下很开胃?天天吃便吃便你就吃不腻吗?胃口还真好
至于谁对谁错,我反正是懒得去争了,旁人自有公断,你要执着于此何不发个投票贴看看大家认为那帖是否“含有挑衅或者侮辱成分”?那种语言风格或许是你的幽默,但在我看来是不会为人处世的表现,大概高估了你的年纪吧
而且你的代码还是有问题的,效率极低,结果也不对,两个基本概念都不懂还舵什么主,难怪平时都不怎么出手,老是转载别人的,鞭炮放这么响我还以为你是武艺高强的陈近南呢,不给力啊那个什么主。
本人不是这主那主的,既然某人挑衅那也贴上 powershell 代码跟你 pk 下,不使用别名,那个什么主别输了哦:
  1. (get-content a.txt | foreach-object { ($_ + "`r`n") }) > b.txt
  2. get-content a.txt | foreach-object { ($_ + "`r`n") } | out-file b.txt #另一种写法
复制代码
好吧这是“你家”,爱咋咋的,本人不再回复此贴,也不在 powershell 区里删帖什么的,某人自己玩去吧,我确实有回骂,所以要删此贴请便,不过我就当你 pk 自己的项目输了。
over
作者: gawk    时间: 2013-7-29 08:23

回复 5# PowerShell


本人水平不高,但要PK你还用不着跟任何人组团。2楼、3楼也许是来打酱油的吧,反正我不认识。
你们帮派不是很多人吗?多找几个来啊,多多益善,欢迎你们群殴我一个。

本人正在论坛里搞轰轰烈烈的砸PowerShell场子活动,只要有空,见谁拿PowerShell瞎扯淡砸谁。要把“PowerShell在Win下无敌”的这种可笑说法PK掉。
作者: PakTC    时间: 2013-7-29 08:27

这是在LUNDA米啊,坐等夏桑菊变向日葵
作者: PowerShell    时间: 2013-7-29 18:59

1 要把“PowerShell在Win下无敌”的这种可笑说法PK掉。----欢迎
2 废话少说,你哪来的?身怀何术?接我这招:[用你会的脚本,编写一个,win右下角,气球提示]
-------------------------------------------------------------------
powershell代码
  1. [system.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms') | Out-Null
  2. #创建 NotifyIcon 对象
  3. $气球对象 = New-Object System.Windows.Forms.NotifyIcon
  4. $path = Get-Process -id $pid | Select-Object -ExpandProperty Path
  5. $icon = [System.Drawing.Icon]::ExtractAssociatedIcon($path)
  6. $气球对象.Icon = $icon
  7. $气球对象.BalloonTipIcon = 'Info'
  8. $气球对象.BalloonTipText = '铛铛,我是一个气球,啦啦la啦la~'
  9. $气球对象.BalloonTipTitle = '我是标题'
  10. $气球对象.Visible = $true
  11. #显示气球提示框
  12. $气球对象.ShowBalloonTip(10000)
复制代码

作者: gawk    时间: 2013-7-30 15:39

回复 9# PowerShell

献丑了:

作者: PowerShell    时间: 2013-7-30 20:12

to10楼
1 转载的也好,最好是自写的,
2 至少应该是一种脚本语言吧。
3 最好是一个实际的案例吧。
作者: gmy    时间: 2014-11-18 10:02

本帖最后由 gmy 于 2014-11-18 10:04 编辑

我一般用 baiy.cn 的 fr  解决字符串替换问题。当然得需要MFC7.1的两个DLL文件,不如楼上几位的小巧。
作者: gmy    时间: 2014-11-18 10:02

本帖最后由 gmy 于 2014-11-18 10:03 编辑

多发了一个贴,那好吧,再说一个句话:fr的主要优点是直观,易编写。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2