লিনাক্স কমান্ড-লাইন ব্যবহার করে আমি কীভাবে স্প্রেডশিটের শীটনামগুলি মুদ্রণ করতে পারি?


11

আমি in2csvএকটি নির্দিষ্ট ওয়ার্কশিটটিকে .csv হিসাবে সংরক্ষণ করার জন্য ব্যবহার সম্পর্কে সচেতন :

in2csv --sheet "sheet name" file1.xls > sheet-name.csv

তবে কেবল শীটনামগুলি মুদ্রণের জন্য কি অন্য কোনও সরঞ্জাম রয়েছে?

পার্লের সাথে কি বিকল্প আছে?

উত্তর:


12

in2csvথেকে csvkitপ্যাকেজ উপলব্ধ --namesবা -nযে জন্য বিকল্প: [ উত্স ]

 -n, --names     Display sheet names from the input Excel file.

আপনার উদাহরণে আদেশটি হ'ল:

in2csv -n file1.xls

এই বৈশিষ্ট্যটি csvkit1.0.2 এ যুক্ত হয়েছিল , যা বায়োনিকের চেয়ে পুরানো রিলিজের জন্য অফিশিয়াল প্যাকেজ উত্স থেকে পাওয়া যায় না । আপনি যদি জেনিয়াল চালাচ্ছেন তবে আপনার প্রয়োজন হয়

  • উত্স থেকে প্রোগ্রামটি সংকলন করুন বা
  • এটি pipদিয়ে ইনস্টল করুন

    sudo pip install csvkit
    

সর্বশেষ সংস্করণ পেতে।


আমি এই উত্তরটি গ্রহণ করতাম তবে আমার কাছে বিকল্পটির in2csvঅভাবের সংস্করণ রয়েছে turns -nঅদ্ভুত, কীভাবে সাম্প্রতিকটি পাবেন তা সন্ধান করার চেষ্টা করছেন তবে সিএসভিকিট নিয়ে সমস্যা হচ্ছে এবং পুরানো মুছে ফেলুন in2csv... দীর্ঘশ্বাস
ফেলুন

2
আমি শুধু সঙ্গে এটি অপসারণ চাই sudo apt remove python3-csvkitএবং ইনস্টল নতুন একটি, বিশেষ করে থেকে packages.ubuntu.com থেকে অন্য, অথবা github.com/wireservice/csvkit/tree/1.0.2 । বৈশিষ্ট্যটি এই প্রতিশ্রুতিবদ্ধ “1.0.2” ট্যাগ সহ প্রবর্তিত হয়েছিল , সুতরাং যে কোনও সংস্করণে এই বিকল্পটি থাকা উচিত।
মিষ্টান্ন

দুর্ভাগ্যক্রমে এটি মনে হয় যে প্যাকেজভুক্ত সংস্করণগুলির কোনওটিই এই সংস্করণ নম্বরটিতে পৌঁছেছে না, সুতরাং গিথুব থেকে উত্সটি সংকলন করা একমাত্র উপায় বলে মনে হয় - এই ক্ষেত্রে, আমি প্যাকেজ সংস্করণটি আনইনস্টল করব না তবে কেবল তার নামের একটি মোড়ক ফাংশন লিখব in2csvthat বিকল্পগুলির সাথে এবং স্বাভাবিক হিসাবে অন্য কোনও /path/to/new/in2csvক্ষেত্রে কল করা হয় । -n/usr/bin/in2csv
মিষ্টান্ন

1
ঠিক আছে. আমি sudo apt remove python3-csvkitনতুনটি ব্যবহার করেছি , ইনস্টল করেছি এবং এটি কাজ করে। মোড়ক ফাংশন হ্যাঁ খুব দরকারী!
চতুর্থ

8

in2csvএটি সহজ বিকল্প, তবে কারওর পক্ষে এটির দরকারী মনে হলে আমি এটি ছেড়ে দেব। xlhtmlএক্সএলএস ফাইলগুলিকে এইচটিএমএল বা এক্সএমএলে রূপান্তর করার জন্য একটি দুর্দান্ত কমান্ড রয়েছে । এবং একবার আপনার এক্সএমএল হয়ে গেলে, বিভিন্ন এক্সএমএল প্রসেসিং সরঞ্জামগুলি এর উপর বিভিন্ন ধরণের প্রশ্নগুলি করতে ব্যবহৃত হতে পারে। এক্ষেত্রে:

$ xlhtml -xml ~/foo.xls | xmlstarlet sel -t -m '//pagetitle' -v . -n
Sheet1
Sheet2

এক্সএমএল যা xlhtmlউত্পন্ন করে তা হ'ল:

<?xml version="1.0" encoding="iso-8859-1" ?>
<excel_workbook>
    <sheets>
        <sheet>
            <page>0</page>
            <pagetitle>Sheet1</pagetitle>
            <firstrow>0</firstrow>
            <lastrow>11</lastrow>
            <firstcol>0</firstcol>
            <lastcol>0</lastcol>

সুতরাং, শীটের নামগুলির জন্য, আমরা pagetitleনোডগুলি জিজ্ঞাসা করতে পারি , যার জন্য আমি ব্যবহার করেছিxmlstarlet


এটি 16.04 জেনিয়ালের জন্য উপলব্ধ নয়। আপনার উত্তরে এটি যুক্ত করতে কি দরকারী?
চতুর্থ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.