انجمنهای فارسی اوبونتو
کمک و پشتیبانی => برنامهسازی => نویسنده: meno در 17 تیر 1392، 02:21 بظ
-
سلام
دوستان محترم من تو یه فایل متنی باید چند خط رو پیدا کنم و اون چند خط رو با چند خط دیگه تغییر بدم
برا مثال من یه فایل دارم که دارای محتویات زیر
top
{
type wall;
nFaces 165;
startFace 65635;
}
outlet
{
type patch;
nFaces 200;
startFace 65800;
}
plat
{
type wall;
nFaces 105;
startFace 66000;
}
wallstream
{
type patch;
nFaces 60;
startFace 66105;
}
inlet
{
type patch;
nFaces 200;
startFace 66165;
}
که می خوام خط زیر رو پیدا کنم
wallstream
{
type wall;
و با کد زیر عوضش کنم
wallstream
{
type patch;
-
sed احتمالا مشکل را حل می کند. فقط عبارت باید در یک خط باشد.
-
من کد زیر رو می نوشتم اما نتیجه ای حاصل نمی شه
sed -i s/"wallstream\n {\n type wall;"/"wallstream\n {\n type patch;"/g test.txt
-
من کد زیر رو می نوشتم اما نتیجه ای حاصل نمی شه
sed -i s/"wallstream\n {\n type wall;"/"wallstream\n {\n type patch;"/g test.txt
یافتم یافتم یافتم \\:D/ \\:D/ \\:D/ \\:D/ \\:D/ \\:D/ \\:D/ \\:D/ 8)
sed -i 'N;N;N;s/ wallstream\n {\n type wall/ wallstream\n {\n type patch/' test.txt
با دستور بالا جواب گرفتم خدا رو شکر
-
عالی بود :D.
-
ان قسمت که نوشتید
N;N;N
یعنی چی؟
-
ان قسمت که نوشتید
N;N;N
یعنی چی؟
تعداد خطوط الگو رو نشون می ده من اینجا اگویی که می خواستم تغییر ش بدم سه خط بود برا همینم از سه تا N;N;N; استفاده کردم